Javascript 网页包错误:TypeError:数据未定义,尽管它显然是
将代码缩小为bundle.js并通过浏览器运行后,我看到:Javascript 网页包错误:TypeError:数据未定义,尽管它显然是,javascript,typescript,webpack,browser,Javascript,Typescript,Webpack,Browser,将代码缩小为bundle.js并通过浏览器运行后,我看到: TypeError: data is undefined 这显然是错误的。如果我检查代码,我可以看到定义的变量: const data = await visitors.create({}) console.log(data) 这就是这条线失败的原因。我不知道为什么。这是我的网页配置: const path = require('path') module.exports = (mode = 'development') =&g
TypeError: data is undefined
这显然是错误的。如果我检查代码,我可以看到定义的变量:
const data = await visitors.create({})
console.log(data)
这就是这条线失败的原因。我不知道为什么。这是我的网页配置:
const path = require('path')
module.exports = (mode = 'development') => {
return {
mode,
devtool: mode === 'development' ? 'inline-source-map' : 'none' ,
entry: path.resolve(__dirname, 'src/index.ts'),
module: {
rules: [
{
test: /\.ts$/,
loader: 'ts-loader',
exclude: /node_modules/,
},
],
},
resolve: {
extensions: ['.ts'],
},
output: {
filename: 'index.js',
path: path.resolve(__dirname, 'dist'),
},
}
}
这是我的tsconfig文件:
{
"compilerOptions": {
"lib": ["dom", "dom.iterable", "esnext"],
"module": "es6",
"moduleResolution": "node",
"noImplicitAny": true,
"target": "es5"
},
"exclude": ["dist", "test", "node_modules"],
"include": ["src/**/*.ts"]
}
我花了好几个小时在这上面,我无法破解它。浏览器中显示的这一点意味着错误不是来自typescript。这意味着
数据
在运行时是未定义的
。但是您发布的这两行代码都不会抛出这样的错误,因为将undefined
赋值给变量是合法的,因此它console.log(undefined)
。那么到底是哪行代码抛出了这个错误呢?visitors.create({})
返回什么?“data”是一个非常常见的词,可能与代码/依赖项中的其他相同变量相冲突。你会用另一个不寻常的词复制吗?