Webpack 开发服务器配置拒绝使用索引的完整路径
Webpack dev server configuration refuse to work with full path to index
你好,我想了解为什么 webpack 开发服务器拒绝使用我的 index.js 的完整路径。 (我正在使用带有 babel 的 webpack 来构建 reactJS。)
目前我的 webpack.config 与我的 index.js 文件位于同一目录中,因此 index.js 的入口点声明只是“./指数”。这是我的 webpack.config 的样子:
module.exports = {
devtool: 'inline-source-map',
entry: [
'webpack-dev-server/client?http://localhost:3000',
'webpack/hot/only-dev-server',
'./index'
],
output: {
path: path.join(__dirname, 'dist'),
filename: 'bundle.js',
publicPath: '/static/'
},
plugins: [
new webpack.HotModuleReplacementPlugin(),
new webpack.NoErrorsPlugin()
],
resolve: {
extensions: ['', '.js']
},
module: {
loaders: [{
test: /\.js$/,
loader: 'babel-loader',
exclude: /node_modules/,
include: __dirname
}]
}};
使用此配置,我的项目由 babel 构建,并且在服务器上运行良好!
当我试图指定 index.js 入口点的完整路径时,我的问题就来了。我需要它,因为我想从我的 FE 代码中外部化 webpack 和它的配置。为了确保它能正常工作,我首先尝试不依赖 webpack.config 和 index.js 在同一目录中,而是将索引的路径指定为完整路径名:
entry: [
'webpack-dev-server/client?http://localhost:3000',
'webpack/hot/only-dev-server',
'D:/projects/myProject/index'
]
有了这个配置,babel 似乎能够导航到 index.js 并开始编译它,但它在解析期间确实遇到了意外的(对我来说)错误:
ERROR in D:/projects/myProject/index.js
Module parse failed: D:/projects/myProject/index.js Line 1: Unexpected token
You may need an appropriate loader to handle this file type.
| import 'babel-core/polyfill';
|
| import React from 'react';
@ multi main
我错过了什么,为什么 webpack 在相对配置 index.js 和完整路径一之间有区别?
(我确保完整路径是正确的)
谢谢!
经过一番烦人的调查后,我的问题似乎是以大写字母指定 Windows 驱动器。出于某种原因,index.js 位置完整路径似乎应以小写驱动器号开头!
希望此经验对其他人有所帮助。
尝试使用:
d:/Folder1/folder2/index.js
而不是
D:/Folder1/folder2/index.js
你好,我想了解为什么 webpack 开发服务器拒绝使用我的 index.js 的完整路径。 (我正在使用带有 babel 的 webpack 来构建 reactJS。)
目前我的 webpack.config 与我的 index.js 文件位于同一目录中,因此 index.js 的入口点声明只是“./指数”。这是我的 webpack.config 的样子:
module.exports = {
devtool: 'inline-source-map',
entry: [
'webpack-dev-server/client?http://localhost:3000',
'webpack/hot/only-dev-server',
'./index'
],
output: {
path: path.join(__dirname, 'dist'),
filename: 'bundle.js',
publicPath: '/static/'
},
plugins: [
new webpack.HotModuleReplacementPlugin(),
new webpack.NoErrorsPlugin()
],
resolve: {
extensions: ['', '.js']
},
module: {
loaders: [{
test: /\.js$/,
loader: 'babel-loader',
exclude: /node_modules/,
include: __dirname
}]
}};
使用此配置,我的项目由 babel 构建,并且在服务器上运行良好!
当我试图指定 index.js 入口点的完整路径时,我的问题就来了。我需要它,因为我想从我的 FE 代码中外部化 webpack 和它的配置。为了确保它能正常工作,我首先尝试不依赖 webpack.config 和 index.js 在同一目录中,而是将索引的路径指定为完整路径名:
entry: [
'webpack-dev-server/client?http://localhost:3000',
'webpack/hot/only-dev-server',
'D:/projects/myProject/index'
]
有了这个配置,babel 似乎能够导航到 index.js 并开始编译它,但它在解析期间确实遇到了意外的(对我来说)错误:
ERROR in D:/projects/myProject/index.js
Module parse failed: D:/projects/myProject/index.js Line 1: Unexpected token
You may need an appropriate loader to handle this file type.
| import 'babel-core/polyfill';
|
| import React from 'react';
@ multi main
我错过了什么,为什么 webpack 在相对配置 index.js 和完整路径一之间有区别?
(我确保完整路径是正确的)
谢谢!
经过一番烦人的调查后,我的问题似乎是以大写字母指定 Windows 驱动器。出于某种原因,index.js 位置完整路径似乎应以小写驱动器号开头!
希望此经验对其他人有所帮助。 尝试使用:
d:/Folder1/folder2/index.js
而不是
D:/Folder1/folder2/index.js