javascript - 无法解析 react-hot-loader/patch

标签 javascript reactjs react-hot-loader

我如何解决控制台中的错误。有什么建议吗?

ERROR in multi (webpack)-dev-server/client?http://127.0.0.1:8888 webpack/hot/dev-server react-hot-loader/patch ./app/index.jsx dev Module not found: Error: Can't resolve 'dev' in '/Users/saorabh/Documents/react/reactExamples/youtube_video_api' @ multi (webpack)-dev-server/client?http://127.0.0.1:8888 webpack/hot/dev-server react-hot-loader/patch ./app/index.jsx dev

在我的 webpack 配置中

"use strict";
var webpack     = require('webpack');
var path = require('path');
var loaders = require('./webpack.loaders');
var HtmlWebpackPlugin = require('html-webpack-plugin');
var DashboardPlugin = require('webpack-dashboard/plugin');
var ExtractTextPlugin = require('extract-text-webpack-plugin');

const HOST = process.env.HOST || "127.0.0.1";
const PORT = process.env.PORT || "8888";

loaders.push({
    test: /\.css$/,
    loaders: ['style-loader', 'css-loader?importLoaders=1'],
    exclude: ['node_modules']
});

loaders.push({
    test: /\.scss$/,
    loaders: ['style-loader', 'css-loader?importLoaders=1', 'sass-loader'],
    exclude: ['node_modules']
});

module.exports = {
    entry: [
        'react-hot-loader/patch',
        './app/index.jsx', // your app's entry point
    ],
    devtool: process.env.WEBPACK_DEVTOOL || 'eval-source-map',
    output: {
        publicPath: '/',
        path: path.join(__dirname, 'public'),
        filename: 'bundle.js'
    },
    resolve: {
        extensions: ['.js', '.jsx']
    },
    module: {
        loaders
    },
    devServer: {
        contentBase: "./public",
        // do not print bundle build stats
        noInfo: true,
        // enable HMR
        hot: true,
        // embed the webpack-dev-server runtime into the bundle
        inline: true,
        // serve index.html in place of 404 responses to allow HTML5 history
        historyApiFallback: true,
        port: PORT,
        host: HOST
    },
    plugins: [
        new webpack.NoEmitOnErrorsPlugin(),
        new webpack.HotModuleReplacementPlugin(),
        new ExtractTextPlugin({
                filename: 'style.css',
                allChunks: true
        }),
        new DashboardPlugin(),
        new HtmlWebpackPlugin({
            template: './app/index.html',
            files: {
                css: ['style.css'],
                js: [ "bundle.js"],
            }
        })
    ]
};

在 .bablelrc 中

{

  "presets": ["es2015", "react", "stage-0"],
  "plugins": ["react-html-attrs","transform-runtime", "transform-decorators-legacy", "transform-class-properties", "react-hot-loader/babel"]
}

应用入口点

import 'react-hot-loader/patch';
import React from 'react';
import ReactDOM from 'react-dom';
import { AppContainer } from 'react-hot-loader'

import Application  from './components/app';

render((
  <AppContainer>
    <Application />
  </AppContainer>
), document.getElementById('app'));

我是新来的 react ,当我尝试几个例子时,我正在考虑这个问题以寻求帮助或建议。


在 webpack 加载器中

module.exports = [
    {
      test: /\.es6\.js$/,
      exclude: /node_modules/,
      loader: 'babel-loader'
  },
    {
        test: /\.jsx?$/,
        exclude: /(node_modules|bower_components|public\/)/,
        loader: "babel-loader"
    },
    {
        test: /\.eot(\?v=\d+\.\d+\.\d+)?$/,
        exclude: /(node_modules|bower_components)/,
        loader: "file-loader"
    },
    {
        test: /\.(woff|woff2)$/,
        exclude: /(node_modules|bower_components)/,
        loader: "url-loader?prefix=font/&limit=5000"
    },
    {
        test: /\.ttf(\?v=\d+\.\d+\.\d+)?$/,
        exclude: /(node_modules|bower_components)/,
        loader: "url-loader?limit=10000&mimetype=application/octet-stream"
    },
    {
        test: /\.svg(\?v=\d+\.\d+\.\d+)?$/,
        exclude: /(node_modules|bower_components)/,
        loader: "url-loader?limit=10000&mimetype=image/svg+xml"
    },
    {
        test: /\.gif/,
        exclude: /(node_modules|bower_components)/,
        loader: "url-loader?limit=10000&mimetype=image/gif"
    },
    {
        test: /\.jpg/,
        exclude: /(node_modules|bower_components)/,
        loader: "url-loader?limit=10000&mimetype=image/jpg"
    },
    {
        test: /\.png/,
        exclude: /(node_modules|bower_components)/,
        loader: "url-loader?limit=10000&mimetype=image/png"
    }
];

最佳答案

我也有同样的问题,react-hot-loader@v1.3.1

解决办法是

npm i -D react-hot-loader@next

https://github.com/gaearon/react-hot-loader/tree/master/docs#migration-to-30

关于javascript - 无法解析 react-hot-loader/patch,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45552709/

相关文章:

javascript - Angular ui 路由器 : Links are not clickable

php - 基于 php、mysql、javascript 的多用户基于 Web 的日历

javascript - 将代码标签内的代码复制到剪贴板reactJS

reactjs - 启用单页应用程序 react 热重载 webpack

javascript - IE8 及以下版本中的 InnerHTML 问题

javascript - 使用 obj.style.marginTop 获取 margin-top 失败,但如果首先显式设置 marginTop 则有效

javascript - 如何根据express/mssql中间件反馈有条件地渲染页面

reactjs - 如何使用react-transition-group设置退出动画

javascript - react 热加载程序 3

javascript - React Hot loader 3 与 webpack-dev