2016-12-09 17 views
0

SearchContainerを使用しようとしていますが、JavaScriptファイルに問題があります。私はAUIモジュールを作成し、Liferay.SearchContainer.getメソッドを呼び出しています。残念ながら、私はブラウザのコンソールログにTypeError: Liferay.SearchContainer is undefinedを取得しています。私は間違っているの?Liferay.SearchContainerは未定義です

は、ここに私のJSコードです:

AUI.add(
'myModule', 
function(A) { 
    var Lang = A.Lang; 

    var Module = A.Component.create(
     { 
      ATTRS: { 
       ... 
      }, 

      AUGMENTS: [Liferay.PortletBase], 
      EXTENDS: A.Base, 
      NAME: 'mymodule', 

      prototype: { 
       initializer: function(config) { 
        var instance = this; 
        var namespace = instance.NS; 
        var searchContainer = Liferay.SearchContainer.get(namespace + instance.get('searchContainerId')); 
       }, 
       ... 
      } 
     } 
    ); 
}, 
'', 
{ 
    requires: ['liferay-portlet-base'] 
} 

)。

答えて

0

私の間違い。 SearchContainerはjspファイルに含まれていませんでした。問題が解決しました。

+0

コンポーネントはLiferay.SearchContainerを使用しているので、このモジュールが必要とすることは明らかです。したがって、必須配列に依存関係を追加することをお勧めします。それをJSPに追加すると、暗黙の依存関係が追加され、コンテキストに応じてモジュールが機能するため、後で問題に遭遇する可能性があります。 – jbalsas