gpt4 book ai didi

javascript - 内联 require() 在 requirejs 中工作但不适用于优化的杏仁构建

转载 作者:可可西里 更新时间:2023-11-01 02:23:49 24 4
gpt4 key购买 nike

正如标题所说,我的内联 require 调用在未优化的 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 版本。但是当我用 grunt 和 almond 构建它时它又失败了

    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"
}
}
},

如果我在 define 调用中将它放在文件顶部,我可以让它在 almond 中正常工作,但在 AMD 中保持精简不是更好吗?

最佳答案

根据 Almond 文档,它最适合非动态加载并将所有内容打包到一个文件中。

您应该能够在编译选项中将“findNestedDependencies”设置为 true,以确保您的内联 require 调用作为构建的一部分包含在内。

关于javascript - 内联 require() 在 requirejs 中工作但不适用于优化的杏仁构建,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15515872/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com