Javascript SuiteScript2.0-包括自定义文件
我正在使用suitescript 2.0(netsuite),我想知道如何使用它的新API包含自定义类(对象)。例如,我试图包含一个控制器类,但得到一个“找不到模块”警告。请参阅下面的代码片段Javascript SuiteScript2.0-包括自定义文件,javascript,netsuite,suitescript,Javascript,Netsuite,Suitescript,我正在使用suitescript 2.0(netsuite),我想知道如何使用它的新API包含自定义类(对象)。例如,我试图包含一个控制器类,但得到一个“找不到模块”警告。请参阅下面的代码片段 /** *@NApiVersion 2.x *@NScriptType Restlet */ define(['N/record', 'N/error', "src/My_Controller"], function (record, error, M
/**
*@NApiVersion 2.x
*@NScriptType Restlet
*/
define(['N/record', 'N/error', "src/My_Controller"],
function (record, error, My_Controller) {
var controller = new My_Controller();
...
错误消息是:模块不存在:src/My_Controller.js
,而实际上模块存在。这是正确的方法吗
NetSuite帮助中心没有任何关于包含自定义/辅助javascript的内容您可以通过文件柜中的路径引用自定义模块。这可以是相对于当前文件的,也可以是相对于文件柜的根目录的。所以它看起来像:
define(['N/record', 'N/error', '/SuiteScripts/my-project/src/My_Controller'], ...)
或:
假设
src
与此文件位于同一目录中。您可以通过文件柜中的路径引用自定义模块。这可以是相对于当前文件的,也可以是相对于文件柜的根目录的。所以它看起来像:
define(['N/record', 'N/error', '/SuiteScripts/my-project/src/My_Controller'], ...)
或:
假设
src
与此文件位于同一目录中。这使我更进一步,但仍然得到以下错误:TypeError:My_Controller不是函数。我会检查我的导出,但非常感谢您需要使用define
功能将自定义文件定义为AMD模块。您的模块将需要导出一个construct
函数或您想要调用的任何名称,然后您将在Restlet中将其引用为My\u Controller.construct()
这使我更进一步,但仍然得到以下错误:TypeError:My\u Controller不是函数。我会检查我的导出,但非常感谢您需要使用define
功能将自定义文件定义为AMD模块。您的模块将需要导出一个construct
函数或任何您想要调用的名称,然后您将它作为My\u Controller.construct()引用到Restlet中