React-fetch需要react-addons,但是没有react / addons文件夹

时间:2016-04-26 16:20:29

标签: reactjs webpack fetch

修改:作者修补了它。

我开始使用react-fetch(好吧,尝试),当我尝试运行webpack时,我收到了这个错误:

ERROR in ./~/react-fetch/build/react-fetch.js
Module not found: Error: Cannot resolve 'file' or 'directory' E:\Users\Adrien\Documents\GitHub\brigad-admin-frontend/node_modules/react/addons in E:\Users\Adrien\Documents\GitHub\brigad-admin-frontend\node_modules\react-fetch\build
 @ ./~/react-fetch/build/react-fetch.js 17:19-42

但是,正如错误所说,我没有react/addons文件夹(我正在使用React 15.0.1)。

以前是否有人遇到此问题?

提前致谢。

PS:这是我的webpack.config.js:

const webpack = require('webpack');
const path = require('path');

const nodeDir = `${__dirname}/node_modules`;

const config = {
  resolve: {
    alias: {
      react: `${nodeDir}/react`,
      'react-dom': `${nodeDir}/react-dom`,
      'react-router': `${nodeDir}/react-router`,
      'react-fetch': `${nodeDir}/react-fetch`,
      'react-bootstrap': `${nodeDir}/react-bootstrap`,
      velocity: `${nodeDir}/velocity-animate`,
      moment: `${nodeDir}/moment`,
      slimscroll: `${nodeDir}/slimscroll`,
    },
  },
  entry: {
    routes: [
      'webpack-dev-server/client?http://localhost:3000',
      'webpack/hot/only-dev-server',
      './public/src/routes/js/main',
    ],
    vendors: [
      'react', 'react-dom', 'react-router', 'react-fetch', 'react-bootstrap',
      'velocity', 'moment', 'slimscroll',
    ],
    // chartVendors: ['raphael', 'morris'],
  },
  output: {
    path: path.join(__dirname, 'public/dist'),
    // publicPath: path.join(__dirname, 'public/dist/'),
    filename: 'bundles/[name].bundle.js',
    chunkFilename: 'chunks/[name].chunk.js',
  },
  module: {
    loaders: [
      {
        test: /\.jsx?$/,
        include: path.join(__dirname, 'public'),
        loader: 'react-hot',
      },
      {
        test: /\.js$/,
        include: path.resolve(__dirname, 'public'),
        loader: 'babel',
      },
      {
        test: /\.css$/,
        include: path.join(__dirname, 'public'),
        loader: 'style!css-loader?modules&importLoaders=1' +
        '&localIdentName=[name]__[local]___[hash:base64:5]',
      },
    ],
  },
  plugins: [
    new webpack.HotModuleReplacementPlugin(),
    new webpack.optimize.CommonsChunkPlugin('vendors', './bundles/vendors.js', Infinity),
  ],
};

module.exports = config;

1 个答案:

答案 0 :(得分:1)

React API已更改。 import React from 'react/addons'在当前版本中无效。我可以看到作者从那里使用React.addons.cloneWithProps

The documentation建议改为使用React.cloneElement

您可以相应调整代码并提交PR以解决此问题。