为什么require()函数不接受变量?

时间:2018-02-13 22:29:03

标签: webpack

我有一个图片标记:

df Name Options Email 0 Bob 1 bob@email.com 1 Bob 2 bob@email.com 2 Bob 4 bob@email.com 3 Bob 5 bob@email.com 4 Bob 6 bob@email.com 5 Jane 1 jane@email.com 6 Jane 3 jane@email.com 7 Jane 4 jane@email.com 8 Jane 5 jane@email.com

通过调用此方法动态地需要图像src:

<img :src="getImage(file.path)">

问题是,它只在我直接在getImage(value) { return require(value) } 函数中指定字符串时才有效。

我通过使用硬编码值而不是输入require()来测试它,只是为了看看发生了什么。你能解释一下为什么会发生这种情况吗?:

作品

value

不起作用

  getImage(value) {
    return require('C:/Users/name/Desktop/1.png')
  }

抛出此错误: getImage(value) { var image = 'C:/Users/name/Desktop/1.png' return require(image) }

因此它不允许我使用该输入Error: Cannot find module ".",因为它仅适用于value

中直接指定的字符串

更新

如果required()不是我在JS中加载图片的方式,请告诉我如何在JS中加载图片?

P.S。这是一个Electron项目,在localhost上使用webpack的服务器打开。

1 个答案:

答案 0 :(得分:0)

require无法在浏览器上运行。它被编译,因此不能采用运行时变量。评论中的链接解释了更多。

What is this Javascript "require"?