javascript - yeoman 构建失败 - rjs mainConfigFile 位置

标签 javascript requirejs rjs yeoman gruntjs

yeoman server 工作正常,但是 yeoman build 在一个奇怪的地方查找我的主要 requirejs 文件并失败:

<WARN> Unable to read "scripts/scripts/main.js" file (Error code: ENOENT). Use --force to continue. </WARN>

似乎添加了额外的 scripts/目录,因为我的 baseUrl 是 ./scripts,但是 yeoman server 发现它在正确的位置。这是我的设置,主要是默认设置:

在 index.html 中:

<!-- build:js scripts/scripts.js -->
<script src="scripts/vendor/require.js" data-main="scripts/main"></script>
<!-- endbuild -->

在 Gruntfile.js 中:

rjs: {
  // no minification, is done by the min task
  optimize: 'none',
  baseUrl: './scripts',
  wrap: true
},

应用树的相关部分:

.
├── Gruntfile.js
├── app
│   ├── index.html
│   └── scripts
│       ├── main.coffee
│       ├── vendor
│       │   ├── require.js
|       |   └── all other js library scripts
│       └── all my other scripts
└── package.json

如果我像这样从 data-main 属性中删除 scripts/目录 data-main="main",它实际上确实可以正确构建。尝试在浏览器中打开构建的应用程序会导致出现空白页面和控制台错误,并且 yeoman server 失败但找不到 main.js。我尝试过对这些参数进行任何其他修改都没有给我带来成功的 yeoman build

我希望我只是遗漏了一个小的配置问题。感谢您的帮助!

最佳答案

我想我的 Gruntfile 的 rjs 配置中缺少一个简单的 name: 'main',所以它应该如下所示:

rjs: {
  // no minification, is done by the min task
  optimize: 'none',
  baseUrl: './scripts',
  wrap: true,
  name: 'main'
},

这可以与 yeoman serveryeoman build 一起正常工作。

关于javascript - yeoman 构建失败 - rjs mainConfigFile 位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14595979/

相关文章:

javascript - 模块模式-如何将一个模块的代码拆分到不同的js文件中?

javascript - 使用 javascript 和 jquery 的 <li> 标签的绿色

Javascript 触摸事件 : distinguishing finger vs. Apple Pencil

javascript - 如何创建寻找元素网页游戏

javascript - 在 Stylus 和 Node.js 和 Express 中使用本 map 片是否可行?

javascript - RequireJS:模块嵌套要求中的动态依赖关系

javascript - jQuery 插件的 RequireJS shim 路径

javascript - 将多个 rails 变量传递给 javascript

jquery - Jrails 和 jquery-rails 一起吗?