Node.js 未捕获引用错误:未定义全局设置节点/express服务器和网页包
我正试图建立一个非常简单的脚本,从API中获取数据并使用它的数据。我需要使用CORS,所以我设置了一个node/express服务器,并将其指向我的Web包包。我得到的错误是Node.js 未捕获引用错误:未定义全局设置节点/express服务器和网页包,node.js,express,webpack,Node.js,Express,Webpack,我正试图建立一个非常简单的脚本,从API中获取数据并使用它的数据。我需要使用CORS,所以我设置了一个node/express服务器,并将其指向我的Web包包。我得到的错误是全局未定义。通过谷歌搜索,我看到人们通过禁用react/redux工具来解决问题,这些工具似乎指向热重新加载。问题是,我没有使用热重新加载 在看到这些之后,我查看了我正在使用的指向我的fetch表达式的global。然而,删除我所有的获取代码并不能解决任何问题 我的服务器看起来像这样 const express = requ
全局未定义
。通过谷歌搜索,我看到人们通过禁用react/redux工具来解决问题,这些工具似乎指向热重新加载。问题是,我没有使用热重新加载
在看到这些之后,我查看了我正在使用的指向我的fetch表达式的global。然而,删除我所有的获取代码并不能解决任何问题
我的服务器看起来像这样
const express = require('express');
const bodyParser = require('body-parser');
const path = require('path');
const app = express();
const cors = require('cors');
const port = process.env.PORT || 3000;
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({
extended: true
}));
app.use(cors());
app.use(express.static(path.join(__dirname, '../dist')));
app.get('/', (req, res) => {
res.sendFile(path.join(__dirname, '../index.html'));
});
app.listen(port, function(){
console.log('server running on http://127.0.0.1:' + port + '/');
});
var path = require('path');
var webpack = require('webpack');
module.exports = {
entry: ['babel-polyfill', './scripts/app.js'],
target: "node",
output: { path: __dirname, filename: './dist/bundle.js' },
devtool: 'source-map',
module: {
loaders: [
{
test: /.js?$/,
loader: 'babel-loader',
exclude: /node_modules/,
query: {
presets: ['es2015'],
"plugins": ["transform-object-rest-spread"]
}
}
]
}
};
我的网页配置如下所示
const express = require('express');
const bodyParser = require('body-parser');
const path = require('path');
const app = express();
const cors = require('cors');
const port = process.env.PORT || 3000;
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({
extended: true
}));
app.use(cors());
app.use(express.static(path.join(__dirname, '../dist')));
app.get('/', (req, res) => {
res.sendFile(path.join(__dirname, '../index.html'));
});
app.listen(port, function(){
console.log('server running on http://127.0.0.1:' + port + '/');
});
var path = require('path');
var webpack = require('webpack');
module.exports = {
entry: ['babel-polyfill', './scripts/app.js'],
target: "node",
output: { path: __dirname, filename: './dist/bundle.js' },
devtool: 'source-map',
module: {
loaders: [
{
test: /.js?$/,
loader: 'babel-loader',
exclude: /node_modules/,
query: {
presets: ['es2015'],
"plugins": ["transform-object-rest-spread"]
}
}
]
}
};
我现在所能想到的是,我没有正确设置我的express服务器,或者我的网页配置中缺少了一些内容。好的,问题是由于将babel polyfill放置在我的webpack.config的入口点中引起的。因为我已经为ES2015设置了预设,所以我不需要polyfill
我不确定为什么我在我的条目中放置了babel polyfill。我没有看到任何明显的东西。在对象上有堆栈跟踪?
。(index.js:9)at _uwebpack_urequire_uu(bootstrap 9fdd931…:19)at对象。(bootstrap 9fdd931…:39)在u_u网页u require_uu(bootstrap 9fdd931…:19)在bootstrap 9fdd931…:39在bootstrap 9fdd931…:39
该死的,只是试图关闭我所有的扩展,而我的polyfill没有任何用处