项目作者: skumail

项目描述 :
A SuiteScript ES6 Boilerplate Project
高级语言: JavaScript
项目地址: git://github.com/skumail/suitescript-boilerplate.git
创建时间: 2018-08-02T05:44:46Z
项目社区:https://github.com/skumail/suitescript-boilerplate

开源协议:MIT License

下载


SuiteScript Boilerplate

A SuiteScript ES6 Boilerplate Project

Installation Instructions

  1. Install Node.js 8+ using detailed installation instructions here
  2. Clone repository
    1. $ git clone https://github.com/skumail/suitescript-boilerplate.git
  3. Change into the working directory
    1. $ cd suitescript-boilerplate
  4. Execute following commands to install NPM dependencies
    1. $ npm install

Build

To build suitescript 2.x compatible code

  1. $ npm run build

To watch build changes

  1. $ npm run watch:build

Test

jest

  1. $ npm test

Style Guide

Writing SuiteScript

ES6 ClientScript Example

  1. /**
  2. *@NApiVersion 2.x
  3. *@NScriptType ClientScript
  4. *
  5. */
  6. import message from 'N/ui/message';
  7. const showErrorMessage = (msgText) => {
  8. const myMsg = message.create({
  9. title: 'Cannot Save Record',
  10. message: msgText,
  11. type: message.Type.ERROR,
  12. });
  13. myMsg.show({
  14. duration: 5000,
  15. });
  16. };
  17. const lineInit = () => {
  18. showErrorMessage('lineInit Triggered!');
  19. return true;
  20. };
  21. const pageInit = () => {
  22. showErrorMessage('pageInit Triggered!');
  23. return true;
  24. };
  25. const postSourcing = () => {
  26. showErrorMessage('postSourcing Triggered!');
  27. return true;
  28. };
  29. const saveRecord = () => {
  30. showErrorMessage('saveRecord Triggered!');
  31. return true;
  32. };
  33. const sublistChanged = () => {
  34. showErrorMessage('sublistChanged Triggered!');
  35. };
  36. const validateDelete = () => {
  37. showErrorMessage('validateDelete Triggered!');
  38. return true;
  39. };
  40. const validateField = () => {
  41. showErrorMessage('validateField Triggered!');
  42. return true;
  43. };
  44. const validateInsert = () => {
  45. showErrorMessage('validateInsert Triggered!');
  46. return true;
  47. };
  48. const validateLine = () => {
  49. showErrorMessage('validateLine Triggered!');
  50. return true;
  51. };
  52. const fieldChanged = () => {
  53. showErrorMessage('fieldChanged Triggered!');
  54. return true;
  55. };
  56. export default {
  57. lineInit,
  58. pageInit,
  59. postSourcing,
  60. saveRecord,
  61. sublistChanged,
  62. validateDelete,
  63. validateField,
  64. validateInsert,
  65. validateLine,
  66. fieldChanged,
  67. };

Netsuite Compatible ClientScript After build

  1. 'use strict';
  2. /**
  3. *@NApiVersion 2.x
  4. *@NScriptType ClientScript
  5. *
  6. */
  7. define(['N/ui/message'], function (message) {
  8. var showErrorMessage = function showErrorMessage(msgText) {
  9. var myMsg = message.create({
  10. title: 'Cannot Save Record',
  11. message: msgText,
  12. type: message.Type.ERROR
  13. });
  14. myMsg.show({
  15. duration: 5000
  16. });
  17. };
  18. var lineInit = function lineInit() {
  19. showErrorMessage('lineInit Triggered!');
  20. return true;
  21. };
  22. var pageInit = function pageInit() {
  23. showErrorMessage('pageInit Triggered!');
  24. return true;
  25. };
  26. var postSourcing = function postSourcing() {
  27. showErrorMessage('postSourcing Triggered!');
  28. return true;
  29. };
  30. var saveRecord = function saveRecord() {
  31. showErrorMessage('saveRecord Triggered!');
  32. return true;
  33. };
  34. var sublistChanged = function sublistChanged() {
  35. showErrorMessage('sublistChanged Triggered!');
  36. };
  37. var validateDelete = function validateDelete() {
  38. showErrorMessage('validateDelete Triggered!');
  39. return true;
  40. };
  41. var validateField = function validateField() {
  42. showErrorMessage('validateField Triggered!');
  43. return true;
  44. };
  45. var validateInsert = function validateInsert() {
  46. showErrorMessage('validateInsert Triggered!');
  47. return true;
  48. };
  49. var validateLine = function validateLine() {
  50. showErrorMessage('validateLine Triggered!');
  51. return true;
  52. };
  53. var fieldChanged = function fieldChanged() {
  54. showErrorMessage('fieldChanged Triggered!');
  55. return true;
  56. };
  57. return {
  58. lineInit: lineInit,
  59. pageInit: pageInit,
  60. postSourcing: postSourcing,
  61. saveRecord: saveRecord,
  62. sublistChanged: sublistChanged,
  63. validateDelete: validateDelete,
  64. validateField: validateField,
  65. validateInsert: validateInsert,
  66. validateLine: validateLine,
  67. fieldChanged: fieldChanged
  68. };
  69. });