当我在计算属性中将字符串传递给file-loader require方法时,它可以正常工作,就像这样
computedProp () {
return require('../path/to/file');
}
但如果我尝试将一些变量传递给它,则会抛出错误
computedProp () {
const l = '../path/to/file';
return require(l);
}
错误:Error: Cannot find module "."
我该如何解决?我想根据某些条件创建相对路径,然后将其传递给require方法以获取绝对路径。
答案 0 :(得分:2)
Stack中发布了非常相似的答案:
由于Webpack在构建时运行,因此无法确定哪一个 当名称是动态变量时要捆绑的模块。你可以给它 通过指定路径的一部分来提示(例如,如果你知道所有的那些 模块在一个目录中。)
Using require('...') with a variable vs. using a string in webpack
所以,为了工作,你可以测试:
computedProp () {
const path = '../path/to'
const file = 'file';
return require(path + '/' + file);
}
希望它有所帮助。