首页 > 解决方案 > require() 不接受具有字符串的 javascript 变量

问题描述

我的问题很直接

var path = './App.vue'

//var App = require(path);  //THIS WILL NOT WORK
var App = require('./App.vue'); //THIS WORKS

DEMO HERE: require() 不接受具有字符串的 javascript 变量

如果我想让它接受 javascipt 变量作为字符串,我应该做什么。

标签: javascript

解决方案


这是个好问题。我知道 webpack 不喜欢你这样做,因为我读到了这个:

将 require('...') 与变量一起使用与在 webpack 中使用字符串

但我也认为这很奇怪:

var App = require(`${path}`);

我只是好奇,你为什么需要它是一个变量?它可能不起作用的原因是像 webpack 这样的工具需要在运行任何代码之前知道路径,以便它可以捆绑所有模块。


推荐阅读