vue中scoped的编译原理
所谓局部 css, 就是通过vue-loader这个插件,在编译打包的时候将带有scoped属性的css打上一个tag, 同时将template内的所有Html 都打上一个相同的tag, 最后通过css的属性选择器定位,造就了所谓的局部css,
css-loader对Import文件会当做外部资源,那么我能理解为它是把Import的css文件单独提取出来,并没有把其中的样式放在
<style scoped>
@import '../assets/css/home.css'
</style>
//这样写的话import的css文件会被编译为全局样式,但是引入less等预编译文件,就会局部生效
方法二:
<style src = "../assets/css/home.css" scoped>
</style>
//这样写css文件中的样式只能在本组件中使用,而不会影响其他组件