2016-05-16 5 views
0

suitscript 2.0(netsuite)と私はカスタムAPIを使ってカスタムクラス(オブジェクト)を含めてどうやって動くのだろうと思っています。たとえば、コントローラクラスをインクルードしようとしていますが、「モジュールが見つかりません」という警告が表示されています。 Module does not exist: src/My_Controller.js実際にそれがあるときエラーメッセージがある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(); 
      ... 

下にスニペットを参照してください。これは正しい方法ですか?

NetSuiteのヘルプセンターでは、あなたはファイルキャビネットでのパスでカスタムモジュールを参照するjavascriptの

答えて

2

カスタム/補助的を含めることについては何もありません。これは、現在のファイルを基準にしても、ファイルキャビネットのルートを基準としてもかまいません。 srcは、このファイルと同じディレクトリにあると仮定すると

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

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

か:だから、それは次のようになります。

+0

これはさらに進歩しましたが、まだこのエラーが発生しています。TypeError:My_Controllerは関数ではありません。私の輸出を確認しても大丈夫です – Coldstar

+1

'define'関数を使ってカスタムファイルをAMDモジュールとして定義する必要があります。あなたのモジュールは、 'construct'関数または呼び出す名前をエクスポートする必要があります。そして、Restletでそれを' My_Controller.construct() 'として参照します。 – erictgrubaugh

関連する問題