6

我正在开发一个 React 应用程序并设置了 webpack 来将我的代码打包成包。

但是,当我使用 React DevTools 在 Chrome 中加载我的应用程序并尝试通过扩展修改组件的道具时,它不会更改值或使用新值重新渲染。

下面是我的webpack.config.js

'use strict';

const webpack = require('webpack')

module.exports = {
  entry: {
    agile: './client/js/agile.jsx.js',
    vendor: [
      'domready',
      'react',
      'react-dom',
      'classnames'
    ]
  },
  output: {
    filename: '[name].bundle.js',
    path: 'public/js',
    publicPath: '/js/'
  },
  module: {
    loaders: [
      { test: /\.js$/, exclude: /node_modules/, loader: 'babel' }
    ]
  },
  plugins: [
    new webpack.optimize.DedupePlugin(),
    new webpack.optimize.OccurenceOrderPlugin(true),
    new webpack.optimize.CommonsChunkPlugin({names: ['vendor'], minChunks: Infinity}),
    new webpack.HotModuleReplacementPlugin()
  ],
  target: 'web',
  devtool: 'source-map',
  stats: {
    color: true,
    modules: false,
    reasons: false
  },
  devServer: {
    hot: true,
    inline: true,
    contentBase: './public/'
  }
};

如果我做错了什么,请告诉我。

我还尝试删除HotModuleReplacementPlugin上面使用的并在没有webpack-dev-server. 他们都没有工作。

版本:

  • 反应 - 15.0.1
  • 反应开发工具 - 0.14.9
  • 节点 - v4.4.1
  • Chrome - Mac OSX 上的 49.0.2623.112(64 位)
4

1 回答 1

11

我不知道这是否有资格作为答案,但我还没有超过 50 分,所以我无法添加评论。

看起来这是由1 月份首次报告的React 优化引起的问题。在该线程的末尾,有一个开放的PR应该可以解决该问题。

于 2016-04-21T14:20:13.673 回答