0

これは、問題を示すサンプルアプリケーションです(ノードベースのr.jsに関するものなので、申し訳ありません)

相対パスで requirejs オプティマイザーを正しく動作させることができません。

私のWebアプリには次のディレクトリがあります

  • アプリ
    • index.html - requirejs、main.js、その後require(['plugins'])(標準のマルチページ設定)を含む
    • スクリプト
      • main.js - requirejs をブートストラップし、baseUrl を /scripts に設定します
      • plugins.js - app-plugins からモジュールを参照および公開します。経由の参照../app-plugins/a.js
    • アプリプラグイン
      • a.js

最適化されていないバージョンではすべて正常に動作します (アプリで Web サーバーを実行し、コンソールを開き、インデックス ページに移動します)。

ただし、最適化すると../、plugins.js が原因でエラーが発生します。この cd を最適化ディレクトリに移動して実行すると、node .\node_modules\requirejs\bin\r.js -o .\build.json. エラーは

W:\temp\requireop\optimization [master]> .\Build-RequireJs.ps1

Tracing dependencies for: main

Tracing dependencies for: plugins
Error: ENOENT, no such file or directory 'W:\temp\requireop\build\app-plugins\a.js'
In module tree:
    plugins

Error: Error: ENOENT, no such file or directory 'W:\temp\requireop\build\app-plugins\a.js'
In module tree:
    plugins

    at Object.fs.openSync (fs.js:427:18)
4

1 に答える 1