Moh*_*hdi 5 javascript reactjs webpack webpack-4
我想建立我的项目
我写了这段代码来构建我的项目 npm run build 但我收到了这个错误:
ERROR in ./src/public/webfonts/fa-solid-900.svg
Module build failed: TypeError: Cannot read property 'context' of undefined
at Object.loader (/Users/mohammadmehdi/Documents/Work/sevenapp/node_modules/file-loader/dist/index.js:34:49)
@ ./node_modules/css-loader??ref--5-1!./src/public/css/fontawesome-all.css 7:72144-72185
@ ./src/public/css/fontawesome-all.css
@ ./src/index.js
ERROR in ./src/public/webfonts/fa-brands-400.svg
Module build failed: TypeError: Cannot read property 'context' of undefined
at Object.loader (/Users/mohammadmehdi/Documents/Work/sevenapp/node_modules/file-loader/dist/index.js:34:49)
@ ./node_modules/css-loader??ref--5-1!./src/public/css/fontawesome-all.css 7:70780-70822
@ ./src/public/css/fontawesome-all.css
@ ./src/index.js
Run Code Online (Sandbox Code Playgroud)
这是我的webpack.config.js:
const HtmlWebPackPlugin = require("html-webpack-plugin");
const htmlWebpackPlugin = new HtmlWebPackPlugin({
template: "./public/index.html",
filename: "./index.html"
});
module.exports = {
module: {
rules: [
{
test: /\.js$/,
exclude: /node_modules/,
loader: "babel-loader",
},
{
//test: /\.css$/,
test:/\.(s*)css$/,
use: [
{
loader: "style-loader"
},
{
loader: "css-loader",
options: {
modules: true,
importLoaders: 1,
localIdentName: "[name]_[local]_[hash:base64]",
sourceMap: true,
minimize: true
}
}
]
},
{
test: /.(ttf|otf|eot|png|svg|woff(2)?)(\?[a-z0-9]+)?$/,
use: [
{
loader: 'url-loader',
options: {
limit : 8192
}
}
]
},
{
test: /.(ttf|otf|eot|png|svg|woff(2)?)(\?[a-z0-9]+)?$/,
use: [
{
loader: 'file-loader',
options: {
outputPath: 'fonts/',
name: '[name][hash].[ext]'
}
}
]
}
]
},
plugins: [htmlWebpackPlugin]
};
Run Code Online (Sandbox Code Playgroud)
我不知道是什么问题!
我的操作系统是 macOS highSierra version 10.13.3
node js version 10
react version 16.2
我使用的是 npm version 6.0.1
webpack version 4。
我认为 webpack 不知道我的字体文件(如 ttf、otf、eot 等...)
Rag*_*ani 10
这个问题是由于 webpack v4 中引入的更改。在Webpack github(不兼容的加载程序部分)中检查此问题。您可以使用网站下方建议的解决方法,即在您的 webpack 配置中添加另一个插件,如下所示:
new LoaderOptionsPlugin({
options: {
context: process.cwd() // or the same value as `context`
}
})
Run Code Online (Sandbox Code Playgroud)
或者您可以将 的版本升级file-loader到解决此问题的v1.1.6。
| 归档时间: |
|
| 查看次数: |
9850 次 |
| 最近记录: |