問題
webpack的入口文件./build/test/src/entry/index
引入css文件 修改后熱更新正常
但是只要修改的是js代碼, webpack就會不斷的打包,最后才更新到瀏覽器,過程將近10s,
網(wǎng)上的很多例子都是express
服務端用的是koa
熱更新插件是koa-webpack-dev-middleware,koa-webpack-hot-middleware
webpack的配置
const webpack = require('webpack');
const path = require('path');
var publicPath = 'http://192.168.1.100:1919/dist/';
var hotMiddlewareScript = 'webpack-hot-middleware/client?path=/__webpack_hmr&timeout=20000&reload=true';
module.exports = {
entry: {
index: [
hotMiddlewareScript,
'./build/test/src/entry/index'
]
},
output:{
filename: 'bundle.[name].js',
path: path.resolve(__dirname, "./build/test/src"),
publicPath: publicPath
},
module: {
loaders: [
{
test: /.css$/,
loader: 'style-loader!css-loader'
},
{
test: /\.js$/,
loader: 'babel-loader',
query: {
'presets': ['es2015', 'stage-0']
}
}
]
},
plugins: [
new webpack.optimize.OccurrenceOrderPlugin(),
new webpack.HotModuleReplacementPlugin(),
new webpack.NoEmitOnErrorsPlugin()
]
}
項目目錄
app.js 服務端
const webpack = require('webpack');
const webpackDevMiddleware = require('koa-webpack-dev-middleware');
const webpackHotMiddleware = require('koa-webpack-hot-middleware');
const config = require('./webpack.config');
const koa = require('koa');
const app = new koa();
const convert = require('koa-convert');
const router = require('./server/router/router');
const koaStatic = require('koa-static');
const views = require('co-views');
const compiler = webpack(config);
app.use(webpackDevMiddleware(compiler, {
noInfo: true,
watchOptions: {
ignored: /node_modules/,
},
reload: true,
publicPath: config.output.publicPath,
stats: {
colors: true
}
}))
app.use(webpackHotMiddleware(compiler))
app.use(async function(ctx,next) {
ctx.render = views(__dirname + '/server', {
ext: 'ejs',
});
await next();
})
.use(koaStatic(__dirname + '/release'))
.use(router.routes())
.use(router.allowedMethods())
app.listen(1919)
package.json
{
"devDependencies": {
"babel-core": "^6.26.0",
"babel-loader": "^7.1.2",
"babel-preset-es2015": "^6.24.1",
"babel-preset-stage-0": "^6.24.1",
"co-views": "^2.1.0",
"css-loader": "^0.28.8",
"ejs": "^2.5.7",
"eventsource-polyfill": "^0.9.6",
"express-to-koa": "^1.0.6",
"koa": "^2.4.1",
"koa-convert": "^1.2.0",
"koa-router": "^7.3.0",
"koa-static": "^4.0.2",
"koa-webpack-dev-middleware": "^2.0.2",
"koa-webpack-hot-middleware": "^1.0.3",
"koa-webpack-middleware": "^1.0.7",
"style-loader": "^0.19.1",
"webpack": "^3.3.0",
"webpack-dev-middleware": "^1.12.0",
"webpack-hot-middleware": "^2.18.2"
},
"dependencies": {
"koa": "^2.0.0-alpha.8"
}
}
北大青鳥APTECH成立于1999年。依托北京大學優(yōu)質(zhì)雄厚的教育資源和背景,秉承“教育改變生活”的發(fā)展理念,致力于培養(yǎng)中國IT技能型緊缺人才,是大數(shù)據(jù)專業(yè)的國家
北大青鳥中博軟件學院創(chuàng)立于2003年,作為華東區(qū)著名互聯(lián)網(wǎng)學院和江蘇省首批服務外包人才培訓基地,中博成功培育了近30000名軟件工程師走向高薪崗位,合作企業(yè)超4
中公教育集團創(chuàng)建于1999年,經(jīng)過二十年潛心發(fā)展,已由一家北大畢業(yè)生自主創(chuàng)業(yè)的信息技術(shù)與教育服務機構(gòu),發(fā)展為教育服務業(yè)的綜合性企業(yè)集團,成為集合面授教學培訓、網(wǎng)
達內(nèi)教育集團成立于2002年,是一家由留學海歸創(chuàng)辦的高端職業(yè)教育培訓機構(gòu),是中國一站式人才培養(yǎng)平臺、一站式人才輸送平臺。2014年4月3日在美國成功上市,融資1
曾工作于聯(lián)想擔任系統(tǒng)開發(fā)工程師,曾在博彥科技股份有限公司擔任項目經(jīng)理從事移動互聯(lián)網(wǎng)管理及研發(fā)工作,曾創(chuàng)辦藍懿科技有限責任公司從事總經(jīng)理職務負責iOS教學及管理工作。
浪潮集團項目經(jīng)理。精通Java與.NET 技術(shù), 熟練的跨平臺面向?qū)ο箝_發(fā)經(jīng)驗,技術(shù)功底深厚。 授課風格 授課風格清新自然、條理清晰、主次分明、重點難點突出、引人入勝。
精通HTML5和CSS3;Javascript及主流js庫,具有快速界面開發(fā)的能力,對瀏覽器兼容性、前端性能優(yōu)化等有深入理解。精通網(wǎng)頁制作和網(wǎng)頁游戲開發(fā)。
具有10 年的Java 企業(yè)應用開發(fā)經(jīng)驗。曾經(jīng)歷任德國Software AG 技術(shù)顧問,美國Dachieve 系統(tǒng)架構(gòu)師,美國AngelEngineers Inc. 系統(tǒng)架構(gòu)師。