局部作用域内(scoped)使用@import引入css引发的css全局污染的问题
在项目中我们可以使用下面这种方式引入外部的css文件
<style src='./main.css' scoped></style>
也可以使用下面这种方式
<style scoped> @import './main.css' </style>
但是这种方式 scoped不会生效 也就是通过@import引入的文件打包后会变成全局的
css-loader对import的文件会当做外部资源,那么我能理解为它是把import的css文件单独提取出来,并没有把其中的样式放在<style scoped>中解析,而是最后把<style>中计算结果和import的css文件混合后,交由style-loader最后解析为style标签加载在页面
<style scoped> @import '../../assets/css/home.css'; </style> /*这样写的话import的css文件会被编译为全局样式,但是引入less等预编译文件,就会局部生效*/
代码搬运工