尝试着通过webpack
打包一个多页(多html文件)应用,但是在通过css-loader
和style-loader
打包css
文件时,发现入口js
导入的css
无法打包到html
文件的head
标签部分(并且尝试着通过extract-text-webpack-plugin
提取css为单独文件也报错了——暂不考虑)
webpack配置文件如下:
module: {
rules: [
//……
{
test: /\.css$/,
use:['style-loader','css-loader']
},
],
},
js入口(chunk)文件如下(src/pages/about/index.js
):
import './css/index.css'
export default {
}
源码地址:https://gitee.com/qingyun1029/webpack-for-multiple-page-demo
使用方式:
- 克隆项目到本地
git clone git@gitee.com:qingyun1029/webpack-for-multiple-page-demo.git
- 安装依赖模块
npm install
- 打包代码
npm run build
格式化打包后的html
会发现head
标签内没有style
标签及样式内容
——————————————————————————————————————————————————
补充:
突然发现一个奇怪的问题?我的package.json里面安装了html-webpack-plugin
、css-loader
、style-loader
,但是控制台的打包信息却只出现了前两者,style-loader
并没有出现。
解决方法请参考(或请持续关注):https://github.com/webpack-co...
补充
之前提出这个问题的原因是一直以为通过
style-loader
处理过的css
会以style
标签插入到打包后的html
原文件里面——就像通过html-webpack-plugin
处理后的html
文件一样——打包后的源码中包含.js
文件晕倒,可能是自己误会了,虽然经过
html-webpack-plugin
插件处理过后的js
文件会插入到html
的body
结束标签之前,但是经过style-loader
处理过的css
文件却不会插入过head
(结束)标签之前——需要通过浏览器打开打包后的静态文件,然后f12才能看到head标签处的style相关样式。