gpt4 book ai didi

javascript - 如果分配给嵌套需求中的变量,RequireJS R.js 看不到依赖需求文件

转载 作者:行者123 更新时间:2023-11-29 20:00:22 25 4
gpt4 key购买 nike

我在使用 r.js 查找嵌套 require 调用的文件依赖项时遇到问题。

如果我传递 require 一个字符串数组,压缩器工作正常并且找到所有文件依赖项。

define([
'jquery',
'underscore',
'backbone'
], function() {
require(['views/MobileNavView']); // Works fine!
});

如果我传递 require 已分配给变量的字符串数组,则压缩器找不到文件依赖项。

var requiredFiles = [
'views/MobileNavView'
];

define([
'jquery',
'underscore',
'backbone'
], function() {
require(requiredFiles); // Doesn't Work!
});

如果我将字符串数组分配给变量,是什么原因导致压缩器找不到文件依赖项?

这是我的 app.build.js

({
baseUrl: '.',
findNestedDependencies: true,
mainConfigFile: 'Main.js',
name: 'Main',
out: 'Core.js',
optimize: 'none'
})

最佳答案

这实际上在 r.js docs page 中提到和解释了

(...) So, it will not find modules that are loaded via a variable name:

 var mods = someCondition ? ['a', 'b'] : ['c', 'd']; require(mods);

那是因为 r.js 将脚本扫描为文本,它实际上并不对它们求值。看看它的源代码,你会发现有很多正则表达式匹配正在进行。

关于javascript - 如果分配给嵌套需求中的变量,RequireJS R.js 看不到依赖需求文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14816854/

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