我尝试使用 r.js 和 grunt 制作我的应用的部署版本。应用程序非常复杂,因此我需要优化版本中的多个文件。特别是,每个子应用程序的特定优化模块和子应用程序模块中使用的一组公共模块。
我已经像这样配置了grunt:
grunt.initConfig({
requirejs: requireJsBuildOptions
});
此处requireJsBuildOptions是模块优化配置的哈希值,其中 name 和 out 。现在它正常工作并构建模块。但是我有一些autogerated要求模块名称解析的问题。例如,我当前优化的模块结构如下所示:
define('some/old/app/path/a', [], function () { });
define('some/old/app/path/b', [], function () { });
define('some/old/app/path/yet/another/c', [], function () { });
define([
'some/old/app/path/a',
'some/old/app/path/b',
'some/old/app/path/yet/another/c'
]);
当我在任何地方需要这个模块时,永远不会调用定义回调。但如果我用简单的替换这些长路径:
define('a', [], function () { });
define('b', [], function () { });
define('c', [], function () { });
define([
'a',
'b',
'c'
]);
调用define回调。那么有什么方法可以使它与旧的长路径一起使用以及为什么它不能正常工作?