legacy-knowledge-base
公開されました Jul. 2, 2025

React コンポーネントを含むテーマの liferay-amd-loader エラーを解決する。

written-by

Tony Ng

How To articles are not official guidelines or officially supported documentation. They are community-contributed content and may not always reflect the latest updates to Liferay DXP. We welcome your feedback to improve How To articles!

While we make every effort to ensure this Knowledge Base is accurate, it may not always reflect the most recent updates or official guidelines.We appreciate your understanding and encourage you to reach out with any feedback or concerns.

legacy-article

learn-legacy-article-disclaimer-text

問題

  • Reactコンポーネントを含むテーマのliferay-amd-loaderエラーがブラウザコンソールで確認できるようになりました:
    • liferay-amd-loader | Errors returned from server for require( ['test-theme/js/controllers/test_controller.es'] ): ["Missing required module 'test-theme/js/controllers/test_controller.es'"]
  • DXP 7.2より、liferay-amd-loaderからaddModuleが削除され、テーマ内のJavaScriptファイルが処理されないようになりました。

Environment

  • DXP 7.2
  • DXP 7.3

解決策

  1. テーマに関連するすべてのJavaScriptファイルを保持するJS Toolkitで、shared bundleを構築します。
  2. 例えば、すべてのJavaScriptファイルがテーマから生成されたReact Widgetに移動した後に、Liferay.Loader.require()を呼び出す.ftlテンプレートからこのバンドルを消費します:
    • Liferay.Loader.require(['my-javascript-project@1.0.0/js/test_controller.es']
  3. Liferay JS toolkitのジェネレーターを使用したReact Widgetは、以下の記事を参考に作成する必要があります:

追加情報

did-this-article-resolve-your-issue

legacy-knowledge-base