猿问

requireJS可以动态引入么

var config = '../builder.js';
var items = require(config);
如果直接写成
require('../builder.js')
是不报错,可以成功引用的。

都是字符串的相对路径,为什么写死就可以,用变量就无法引用


神不在的星期二
浏览 2625回答 2
2回答

Smart猫小萌

require是AMD规范,讲究依赖前置,他会在代码中直接被正则匹配然后去预加载,如果中间是变量的话当然就会出错。这个问题在本站有相似问题提到了.你可以看一下他们的表述,我觉得是类似的原因补充一下,如果报错的话,可能是因为require是一个异步操作,执行完的时候不能直接使用其中的变量require(['jquery'], function($) {     alert($().jquery); });

万千封印

不可以。es6增加了动态引入import('xxxx')。另外在webpack也是支持动态引入的require.ensure,不过后来还是推荐使用标准(es6)
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答