Модуль ввода не найден: Ошибка: невозможно разрешить './src/index.js'

Я устанавливал приложение для запуска реакции и добавил Webpack, но он говорит, что Can't resolve './src/index.js'.

Браузер показывает My app gives this look

Путь к моим файлам и содержание Package.json enter image description here

Webpack.config.js Содержание

 var debug = process.env.NODE_ENV !== "production";
    var webpack = require('webpack');
    var path = require('path');

    module.exports = {
        context: path.join(__dirname, "public"),
    devtool: debug ? "inline-sourcemap" : false,
    entry: "./src/index.js",
    module: {
        loaders: [
            {
                test: /\.jsx?$/,
                exclude: /(node_modules|bower_components)/,
                loader: 'babel-loader',
                query: {
                    presets: ['react', 'es2016', 'stage-0'],
                    plugins: ['react-html-attrs', 'transform-decorators-legacy', 'transform-class-properties'],
                }
            }
        ]
    },
    output: {
        path: __dirname + "/public/",
        filename: "build.js"
    },
    plugins: debug ? [] : [
        new webpack.optimize.DedupePlugin(),
        new webpack.optimize.OccurrenceOrderPlugin(),
        new webpack.optimize.UglifyJsPlugin({ mangle: false, sourcemap: false }),
    ],
};

Ответ 1

Ваш базовый URL-адрес - path.join(__dirname, "public"), а ваша запись - ./src/index.js. Webpack пытается найти ./src/index.js в public ./src/index.js; очевидно, его не существует. Вы должны изменить entry на ../src/index.js.

Ответ 2

Другой способ найти эту проблему - использовать path.resolve().

const path = require('path');
module.exports = {
    mode: "production",
    entry: path.resolve(__dirname, 'src') + 'path/to/your/file.js',
    output: {
        /*Webpack producing results*/
        path: path.resolve(__dirname, "../src/dist"),
        filename: "app-bundle.js"
    }
}

Это убедится, что webpack ищет точку входа в каталоге src.

Кстати это точка входа по умолчанию. Вы также можете изменить эту точку входа на ваше подходящее местоположение. Просто замените каталог src другим каталогом, который вы хотите использовать.

Ответ 3

Входной путь относится к контексту. Он ищет файл в public/src/, если вы хотите, чтобы он искал путь только в /src. Если посмотреть на оставшуюся часть вашего webpack.config.js, похоже, вам не нужна контекстная строка.

https://webpack.js.org/configuration/entry-context/

Ответ 4

Мой webpack.config.js был назван Webpack.config.js, и новый клиент искал что-то чувствительное к регистру.