+
95
-

回答

前端模块化编程下,在对应的模块的js中import css进来,那么这个css仍然是全局,会被其它模块的css污染。

在vue中引入了scoped这个概念,scoped的设计思想就是让当前组件的样式不会修改到其它地方的样式,使用了data-v-hash的方式来使css有了它对应模块的标识,这样写css的时候不需要加太多额外的选择器,方便很多。


但是要注意scoped的作用域,因为权重的问题,如果是在子组件使用了scoped,那么在父组件中是不能直接修改子组件的样式的,需要在父组件中使用vue的深度作用选择器。

.parent >>> .children{ /* ... */ }

.parent /deep/ .children{ /* ... */ }

网友回复

我知道答案,我要回答