NODE.JS:为什么可以';我不能使用web pack进行实时重新加载吗?
我现在很沮丧,我花了一整天的时间试图让webpack正常工作,但是每一个教程或文档都很糟糕..不应该这么难..如果这些软件包真的让你花更多的时间来配置它们,然后节省时间,那又有什么意义呢 我只想现场重新加载工作。我已经尝试过内联方法、iframe、hot模块和带有express的中间件。这一切都不管用…我在atom上使用Node.js和safari浏览器 我想让它和express一起工作 有人能给我指一个好的教程吗…或者一步一步地简单地解释 我需要帮助。请没有人会回复这些事情!多谢各位 webpack.config.jsNODE.JS:为什么可以';我不能使用web pack进行实时重新加载吗?,node.js,livereload,Node.js,Livereload,我现在很沮丧,我花了一整天的时间试图让webpack正常工作,但是每一个教程或文档都很糟糕..不应该这么难..如果这些软件包真的让你花更多的时间来配置它们,然后节省时间,那又有什么意义呢 我只想现场重新加载工作。我已经尝试过内联方法、iframe、hot模块和带有express的中间件。这一切都不管用…我在atom上使用Node.js和safari浏览器 我想让它和express一起工作 有人能给我指一个好的教程吗…或者一步一步地简单地解释 我需要帮助。请没有人会回复这些事情!多谢各位 web
const nodeExternals = require('webpack-node-externals');
module.exports =
{
entry: './app.js',
target: 'node',
externals: [nodeExternals()],
output: {
path: __dirname + '/dist',
filename: 'app.bundle.js',
},
devServer: {
port: 8000,
open: true,
inline: true
},
module: {
loaders: [
{
loader: 'babel-loader',
test: /\.js$/,
exclude: /node_modules/
}
]
}
}
package.json
{
"name": "clinic8beauty",
"version": "1.0.0",
"description": "",
"main": "app.js",
"scripts": {
"b": "webpack",
"s": "webpack-dev-server",
"test": "echo \"Error: no test specified\" && exit 1"
},
"babel": {
"presets": [
"es2015"
]
},
"author": "Kosta Pontidas",
"license": "ISC",
"dependencies": {
"body-parser": "^1.17.1",
"events": "^1.1.1",
"express": "^4.15.2",
"jquery": "^3.2.1",
"pug": "^2.0.0-beta.12",
"twilio": "^2.11.1",
"validator": "^7.0.0"
},
"devDependencies": {
"babel-core": "^6.24.1",
"babel-loader": "^7.0.0",
"babel-polyfill": "^6.23.0",
"babel-preset-es2015": "^6.24.1",
"node-sass": "^4.5.2",
"pug-html-loader": "^1.1.4",
"sass-loader": "^6.0.3",
"webpack": "^2.4.1",
"webpack-dev-server": "^2.4.4",
"webpack-hot-middleware": "^2.18.0",
"webpack-node-externals": "^1.5.4"
}
}
app.js需要
const express = require('express'),
app = express(),
events = require('events'),
eventEmitter = new events.EventEmitter(),
bodyParser = require('body-parser'),
validator = require('validator'),
client = require('twilio')('AC3cdbdc7ecb720d5521f41243450343e8',
'8f76c52d839dc25aa17ddc72b3b9d781');
您的配置中有目标节点,将其更改为web或将其删除,因为默认为web。它可以解决您的问题。您可以尝试以下方法吗
const nodeExternals = require('webpack-node-externals');
const path = require('webpack'); // <== added
module.exports =
{
entry: './app.js',
// target: 'node', <== deleted
externals: [nodeExternals()],
output: {
path: path.resolve(__dirname, 'dist'), //<== added
filename: 'app.bundle.js'
},
devServer: {
port: 8000,
open: true,
inline: true,
contentBase: [path.resolve(__dirname, 'dist')/* add other directories if needed */]
},
module: {
loaders: [
{
loader: 'babel-loader',
test: /\.js$/,
exclude: /node_modules/
}
]
}
}
const nodeExternals=require('webpack-node-externals');
const path=require('webpack');// 为什么不全局使用nodemon和webpack来编译指向教程是离题的。但是,如果您发布代码并告诉我们什么不起作用,那么我们可以提供一些帮助。您的配置文件在哪里?请给我第二次我现在就上传,只需在@dummy上方创建一个上传的配置文件。您是否使用webpack dev server运行您的应用程序?您可以共享您的package.json吗请共享整个package.json,包括脚本部分。请尝试使用以下“s”重放s脚本:“webpack dev server--progress--hot--bail”并查看是否有任何错误。您可以尝试移除外部:[nodeExternals()],并用devServer替换devServer:{historyApiFallback:true,stats:'minimal'}让我们看看。在视图文件夹下@Dummyi did@DummyI在arrayI中添加了“path.resolve(_udirname,'views')”这样做@达米,我该怎么做