为什么每个页面都要引入global.scss

来源:7-4 书城首页(标题+搜索框布局)

胡莱馒头

2019-03-24

1.已经在main.js中引入了global.scss,那px2rem不是应该为全局了吗,为什么vue文件中不再次引入global.scss就无法使用scss的方法呢?

2.如果是因为@function, @mixin这种属性不能全局使用,那为什么不单独弄一份文件各个页面引入呢,全局已经有gloabal.scss,别的页面还引入,那不是又引入了reset.css和transition.css等等,有点困惑,请老师解答一下

写回答

1回答

Sam

2019-03-24

你好,因为每个scss文件都是独立编译的,编译的目的是为了把scss文件转化为css文件,在编译过程中需要找到变量的引用,所以每个scss中都需要import global.scss。编译后,如果我们使用了异步模块(就是在router中使用import方法导入路由),那么每个模块都会编译出不同的css文件,最终在index.html中进行引用。所以各模块的css部分是相对独立的。

//img.mukewang.com/szimg/5c96f4060001979e20361432.jpg

0
3
Sam
回复
胡莱馒头
不会的,scss中的import只是为了获取变量和函数,不会重复拷贝reset.scss这些内容,你打开dist目录下的css文件看一下就知道了,webpack在这方面已经优化得很好了
2019-03-28
共3条回复

Vue 实战商业级读书Web APP完整项目

Vue全家桶+最新前端技术+前后端分离架构,完整项目流程

1610 学习 · 1951 问题

查看课程