Ответ 1
Ваш базовый URL-адрес - path.join(__dirname, "public")
, а ваша запись - ./src/index.js
. Webpack пытается найти ./src/index.js
в public
./src/index.js
; очевидно, его не существует. Вы должны изменить entry
на ../src/index.js
.
Я устанавливал приложение для запуска реакции и добавил Webpack, но он говорит, что Can't resolve './src/index.js'
.
Путь к моим файлам и содержание Package.json
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 }),
],
};
Ваш базовый URL-адрес - path.join(__dirname, "public")
, а ваша запись - ./src/index.js
. Webpack пытается найти ./src/index.js
в public
./src/index.js
; очевидно, его не существует. Вы должны изменить entry
на ../src/index.js
.
Другой способ найти эту проблему - использовать 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
другим каталогом, который вы хотите использовать.
Входной путь относится к контексту. Он ищет файл в public/src/
, если вы хотите, чтобы он искал путь только в /src
. Если посмотреть на оставшуюся часть вашего webpack.config.js
, похоже, вам не нужна контекстная строка.
Мой webpack.config.js был назван Webpack.config.js, и новый клиент искал что-то чувствительное к регистру.