Linter 错误 - 未定义仅限浏览器的函数
Linter error - Browser-only function is not defined
我依赖浏览器中可用的 class,FileReader
我在 webpack 中不断收到错误 - 'FileReader' is not defined no-undef
正确的处理方法是什么?我目前正在使用一种忽略消息的方法。
问题在于,由于 webpack 找不到它作为 Node.js 的一部分,并且由于它不可用,因此会导致错误。但是有几种方法可以解决这个问题。
而不是
var reader = new FileReader();
使用
修复#1
var reader = new window.FileReader();
修复#2
var reader = new global.FileReader();
webpack 默认情况下会将全局转换为 window。
更多信息:https://webpack.js.org/configuration/node/
修复#3
// in webpack.config.js
module.exports = {
//...
externals: {
FileReader: 'FileReader'
}
};
我依赖浏览器中可用的 class,FileReader
我在 webpack 中不断收到错误 - 'FileReader' is not defined no-undef
正确的处理方法是什么?我目前正在使用一种忽略消息的方法。
问题在于,由于 webpack 找不到它作为 Node.js 的一部分,并且由于它不可用,因此会导致错误。但是有几种方法可以解决这个问题。
而不是
var reader = new FileReader();
使用
修复#1
var reader = new window.FileReader();
修复#2
var reader = new global.FileReader();
webpack 默认情况下会将全局转换为 window。 更多信息:https://webpack.js.org/configuration/node/
修复#3
// in webpack.config.js
module.exports = {
//...
externals: {
FileReader: 'FileReader'
}
};