webpack - 手表不能正常工作

时间:2016-05-11 10:02:32

标签: reactjs webpack jsx

我正在使用webpack作为React.js文件的构建系统。我正在使用webpack --watch创建捆绑包并等待任何更改然后再次重建。但我有一种情况,如它创建捆绑并退出,它不等待任何改变。我知道什么是错的

enter image description here

我的webpack.config.js

module.exports = {
    entry: [
       './Components/App.js'
    ],
    output:{
        path:__dirname,
        filename:'bundle.js'
    },
    module:{
        loaders:[{
            test: /\.jsx?$/,
            exclude:/node_modules/,
            loader:'babel',
            query:{
              presets: ['react']
            }
        }]
    }
};

的package.json

{
  "name": "Sample",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "",
  "license": "ISC",
  "dependencies":{
    "react": "^0.14.6",
    "react-dom": "^0.14.6",
    "webpack": "^1.12.9",
    "webpack-dev-server": "^1.14.0",
    "babel-core": "^6.2.1",
    "babel-loader": "^6.2.0",
    "babel-preset-es2015": "^6.1.18",
    "babel-preset-react": "^6.1.18"
  }  
}

App.js

import React from 'react';
import ReactDOM from 'react-dom';

var HelloWorld = React.createClass({
    render:function(){
        return (
           <div>
             <h1> This is a heading </h1>
             <p> This is a Paragraph </p>
           </div>
        );
    }
});

ReactDOM.render(<HelloWorld />,document.getElementById('container'));

2 个答案:

答案 0 :(得分:1)

你看过这个吗? https://webpack.github.io/docs/troubleshooting.html#watching

此外,尝试使入口点文件路径绝对而不是相对:

var path = require('path');
module.exports = {
    entry: [
       path.resolve('./Components/App.js')
    ]
    ...
}

我不确定webpack是否能够查看入口点文件,如果它被分类为模块而不是文件路径。

如果这不起作用,您能否发布入口点JS文件?可能存在与您需要/导入文件的方式相关的问题(例如,不同的外壳),因为webpack无法观看这些。

答案 1 :(得分:0)

要观看,您可以使用--progress --watch。请参阅https://webpack.js.org/configuration/watch/#root

中的疑难解答