正如标题所说,我的内联要求调用正在非优化的requirejs运行,但在使用grunt和almondjs构建时无效。
Uncaught Error: undefined missing views/some/view
任何文件的顶部可能是:
define(
['jquery', 'app'],
function($, App) {
以后基于业务逻辑,我希望能够需要另一个文件
require(['views/some/view'], function(SomeView){
console.log(SomeView);
});
我也尝试了替代语法:
var SomeView= require('views/some/view');
这一切都使用未构建的requirejs版本。但是,当我用咕噜声和杏仁
构建它时,它再次失败了 requirejs: {
compile: {
options: {
name: "../components/almond/almond",
baseUrl: "src",
mainConfigFile: "./require.config.js",
include: ['main'],
insertRequire: ['main'], // Add a require step in at the end for the main module.
wrap: true, // Wrap everything up in a closure
generateSourceMaps: true, // Experimental
preserveLicenseComments: false, // Needs turned off for generateSourceMaps
optimize: "uglify2", // Supports generateSourceMaps
out: "assets/javascripts/build.js"
}
}
},
如果我在定义调用中将它放在文件的顶部,我可以在杏仁中正常工作,但在AMD中是不是更喜欢让它保持精益?
答案 0 :(得分:10)
根据Almond文档,它非常适用于非动态加载以及打包到一个文件中的所有内容。
您应该能够在编译选项中将“findNestedDependencies”设置为true,以确保您的内联require调用包含在构建中。