【发布时间】:2020-07-24 04:51:36
【问题描述】:
在运行npm run dev 时,弹出以下错误。
Cannot statically evaluate fs argument
[0] 50 | // Read file and split into lines
[0] 51 | var map = {},
[0] > 52 | content = fs.readFileSync(file, 'ascii'),
[0] | ^
[0] 53 | lines = content.split(/[\r\n]+/);
[0] 54 |
[0] 55 | lines.forEach(function(line) {
【问题讨论】:
-
什么工具会产生这个错误?这听起来像是从 Webpack 或 Rollup 之类的打包工具中得到的错误,而不是标签中列出的任何工具。我的猜测是你在服务器端代码中有这个但不小心让捆绑器试图捆绑它。 (打包者不喜欢非静态文件名,因为他们不知道文件是什么,这意味着他们无法确保文件在包中并正确访问。)
-
您是否在导入时添加了
const fs = require('fs');。我也不明白为什么每行后面都有逗号。这是构建文件夹的输出吗?在正常的开发代码中,应该用分号来结束一行。 -
@VPaul 这只是多个标识符的变量声明。你可以很好地声明
var a, b, c,甚至为它们添加一个初始化器var a = 1, b = 2, c = 3是一个完全有效的声明语句。 -
@VLAZ 感谢您的关注。我没有看到循环之前使用了分号。
-
您的问题需要更详细或更清楚。因为您应该传递
content = fs.readFileSync(file, 'ascii'),整个代码并写下您的愿望。例如为什么你应该使用fs。上传图片?或者别的什么。
标签: javascript node.js reactjs user-interface npm