我正在尝试使用 .css 将 Webpack 样式提取到 .css 文件中mini-css-extract-plugin
。我收到一条错误消息,指出它找不到模块。
./Common/Login/login.min.css 中的错误模块构建失败(来自 ./node_modules/mini-css-extract-plugin/dist/loader.js):
错误:找不到模块'../../node_modules /css-loader/dist/runtime/api.js' 在 webpackMissingModule (C:@Code\node_modules\css-loader\dist\cjs.js!C:@Code\Common\Login\login.min.css:108: 92)
似乎模块位置是一个相对路径../../node_modules
,如果它尝试从node_modules/css-loader/dist/cjs.js
. 似乎应该如此../../../
。
我不知道这些相对路径在哪里或为什么会这样,或者这是否是问题所在。以下是相关的 Webpack 配置选项:
partialConfig = : webpack.Configuration = {
mode: "development",
entry,
resolve: {
modules: [
"node_modules",
path.resolve(__dirname),
],
extensions: [".ts", ".js", ".css"]
},
module: {
rules: [
{
test: /\.(bmp|gif|jpe?g|png|svg)$/,
exclude: /node_modules/,
use: "file-loader?name=images/[name].[ext]"
},
{
test: /\.(eot|ttf|woff|woff2)$/,
exclude: /node_modules/,
use: "file-loader?name=fonts/[name].[ext]"
},
{
test: /\.css$/,
exclude: /node_modules/,
use: [MiniCssExtractPlugin.loader, 'css-loader']
}
]
},
plugins: [
new MiniCssExtractPlugin({
filename: "[name]"
})
],
}
知道为什么mini-css-extract-plugin
会这样轰炸吗?如果我只使用style-loader
,那么一切都会正确编译,但显然输出是 JavaScript 而不是可缓存的 CSS 样式表文件。