webpack 无法自动刷新

wepack配置了 webpack-dev-server ,貌似也监听到了文件的变化,但是bundle.js中没有跟着刷新,怎么回事?
目录如下
图片描述

package.json

请输入代码

{
"name": "webgldeom",
"version": "1.0.0",
"description": "use threejs demo",
"main": "./app/index.js",
"scripts": {

"webpack": "node node_modules/webpack/bin/webpack.js",
"start": "node node_modules/webpack-dev-server/bin/webpack-dev-server.js --inline --port 8080 --progress",
"build": "node node_modules/webpack/bin/webpack.js -p --devtool hidden-module-source-map"

},
"author": "bin.yang",
"license": "ISC",
"devDependencies": {

"webpack": "^1.14.0",
"webpack-dev-server": "^1.16.2"

}


配置文件:webpack.config.js如下

var webpack = require('webpack');

    module.exports = {
        devtool: 'source-map',
    
        //页面入口文件配置
        entry:'./app/index.js',
        
        //入口文件输出配置
        output: {
            filename: 'bundle.js',
            path: './build',
        },
        resolve: {
            root: './node_modules',
            extensions: ['', '.js', '.json', '.scss'],
        }
    };

index.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title text="webgldemo">Title</title>
    <script src="three.js-dev/build/three.js"></script>
</head>
<body>
    <div id='root' onload="init()">
       <canvas id = "mainCanvas" width="400px" height="300px"/>
    </div>
    <!--<script src = 'build/common.js'></script>-->
    <script src = 'build/bundle.js'></script>
    <!--<script src = 'http:localhost:8080/build/bundle.js'></script>-->
</body>
</html>
阅读 4.5k
3 个回答

script.start中缺少--hot

bundle是打包的结果,但是你运行都是启动服务等,并没有执行打包。在package的start中加入webpack -w 表示监听文件改变并在文件改变的同时打包。

接触前段时间不长 要是错了就当我瞎白话呢吧…

如果webpack配置没错,更改webstrom保存文件的设置,不然出口文件没法更新,即使监听到变化
或者你先用sublime试试更改代码能否正常

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题