当前位置: 首页 > 编程笔记 >

解决vue 单文件组件中样式加载问题

丰景同
2023-03-14
本文向大家介绍解决vue 单文件组件中样式加载问题,包括了解决vue 单文件组件中样式加载问题的使用技巧和注意事项,需要的朋友参考一下

在写单文件组件时,一般都是把标签、脚本、样式写到一起,这样写个人感觉有点不够简洁,所以就想着把样式分离出去。

采用import加载样式

在局部作用域(scoped)采用@import加载进来的样式文件,想法是美好的。以为这样加载进来的样式文件也只对当前组件有效;可现实是残酷的,这样加载进来的样式无法限制其作用域。

<style scoped>
  @import "样式文件";
</style>

解决方案

采用 src属性加载样式。

<style src="样式路径" scoped></style>

PS:关于vue单文件组件中样式的问题

在写单文件组件的项目时,遇到过这样的问题。某一个样式类,明明我只写了两个padding,但是在我用webpack构建之后,莫名其妙的多出了很多其他的样式。

后来,无意中看见别人的提问中,说如何解决单文件组件中样式同名的问题。

我就想,会不会是不同的.vue文件里使用了同名类的原因。

于是,我在style标签后面加上了scoped这个关键字之后,再npm run build,果然好了。

原因:

不加scoped表示样式是全局共享的。

加上了scoped就是这个样式只能在这个.vue文件里面有效。

总结

以上所述是小编给大家介绍的解决vue 单文件组件中样式加载问题,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对小牛知识库网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

 类似资料:
  • 本文向大家介绍.vue文件 加scoped 样式不起作用的解决方法,包括了.vue文件 加scoped 样式不起作用的解决方法的使用技巧和注意事项,需要的朋友参考一下 浅谈关于.vue文件中的style的scoped属性 注意:scoped作用:使得.vue中的样式不影响其他.vue组件样式,而不是scoped使得.vue组件样式不受外样式影响。 1、在vue组件中,为了使样式私有化(模块化),不

  • 介绍 在很多Vue项目中,我们使用 Vue.component 来定义全局组件,紧接着用 new Vue({ el: '#container '}) 在每个页面内指定一个容器元素。 全局定义(Global definitions) 强制要求每个 component 中的命名不得重复 字符串模板(String templates) 缺乏语法高亮,在 HTML 有多行的时候,需要用到丑陋的 \ 不支持

  • 本文向大家介绍vue中element组件样式修改无效的解决方法,包括了vue中element组件样式修改无效的解决方法的使用技巧和注意事项,需要的朋友参考一下 如下所示: 直接写style注意不加scoped,然后用一个组件最外层的class包裹住,就不会改到所有的组件的样式了。 以上这篇vue中element组件样式修改无效的解决方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大

  • 一开始在浏览器运行Vue文件还可以的,之后写了HTML文件并运行后发现无论如何都无法回到原来的Vue文件了 尝试: 结果:

  • 将所有页面组件一次性加载是一个很浪费资源和考验用户耐心的做法,尤其在移动端。 使用方法 webpack 提供了code splitting,你可以按照下面写法实现当切换到特定路由时才加载代码。 需要注意的是 vue-loader@13.0.0 语法有所变更,具体参照发布说明 v13.0.0 // vue-loader@13.0.0 之前 const Foo = () => import('./Fo

  • 本文向大家介绍简单解决Python文件中文编码问题,包括了简单解决Python文件中文编码问题的使用技巧和注意事项,需要的朋友参考一下 读写中文 需要读取utf-8编码的中文文件,先利用sublime text软件将它改成无DOM的编码,然后用以下代码: 这样就可以正确地读出文件里面的中文字符了。 同样的,如果要在创建的文件中写入中文,最好也和上面差不多: 创建中文文件 然后以读出的字符为文件名,