2016-05-16 42 views
0

Im與suitescript 2.0(netsuite)和我想知道如何去包括使用它的新API的自定義類(對象)。例如,我試圖包含一個控制器類,但得到「模塊未找到」的警告。請參閱下面的代碼片段SuiteScript2.0 - 包括一個自定義文件

/** 
    *@NApiVersion 2.x 
    *@NScriptType Restlet 
    */ 
    define(['N/record', 'N/error', "src/My_Controller"], 
     function (record, error, My_Controller) { 
      var controller = new My_Controller(); 
      ... 

錯誤消息是:Module does not exist: src/My_Controller.js其實它在那裏。這是做到這一點的正確方法嗎?

NetSuite的幫助中心有任何關於納入定製/輔助的JavaScript的

回答

2

您可以通過它們的路徑在文件櫃中引用自定義模塊。這可以是相對於當前文件或相對於文件櫃的根。因此,它看起來像:

define(['N/record', 'N/error', '/SuiteScripts/my-project/src/My_Controller'], ...) 

或:

define(['N/record', 'N/error', './src/My_Controller'], ...) 

假設src是在同一個目錄作爲該文件。

+0

這讓我更進了一步,但仍然得到這個錯誤:TypeError:My_Controller不是一個函數。生病檢查我的出口,但非常感謝 – Coldstar

+1

您需要使用define函數將您的自定義文件定義爲AMD模塊。你的模塊需要導出一個'construct'函數或任何你想調用的名字,然後你將在Restlet中引用它作爲'My_Controller.construct()' – erictgrubaugh