这是一个演示该问题的示例应用程序(抱歉,没有小提琴,因为它是关于基于节点的 r.js)
我无法让 requirejs 优化器与相对路径一起正常工作。
我的网络应用程序有以下目录
- 应用程序
- index.html - 包括 requirejs、main.js,然后
require(['plugins'])
(标准多页设置) - 脚本
- main.js - 引导 requirejs,将 baseUrl 设置为 /scripts
- plugins.js - 从 app-plugins 引用和公开模块。参考文献通过
../app-plugins/a.js
- 应用程序插件
- 一个.js
- index.html - 包括 requirejs、main.js,然后
在非优化版本中一切正常(在应用程序上运行网络服务器,打开控制台并导航到索引页面)。
但是,由于../
在 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)