Vue学习——scoped样式

本文介绍了如何使用 scoped 属性防止 Vue 组件间样式冲突的问题,并通过实例展示了其具体用法。同时,还讨论了在 App.vue 文件中使用 scoped 的注意事项及 less-loader 版本配置的相关问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

作用:让样式在局部生效,防止冲突

写法:<style scoped>

总结:可以防止在两个组件中使用了相同名字的style样式而导致后面引入的样式覆盖了前面的样式的冲突,但在App.vue文件中最好不要使用,因为App.vue通常存放所有的style样式,大多数情况都是用来在全局使用的。此外可以使用npm view webpack versions命令查看webpack的历史版本,使用npm i less-loader@版本号配置less-loader,当ledd-loader版本高于webpack版本不少时安装可能会报错。

App.vue

<template>
  <div id="app" class="app">
    <Blogger/>
    <hr>
    <friend/>
  </div>
</template>
<script>
  // 引入
  import Blogger from './components/Blogger.vue'
  import Friend from './components/Friend.vue'

  export default {
    name: 'app',
    components: { Blogger,Friend }
}
</script>

<style lang="less">
  .app{
    background-color: cornflowerblue;
    .qwe{
      font-size: 40px;
    }
  }
</style>


Blogger.vue

<template>
    <div class="blogger">
        <h1>{{msg}}</h1>
        <h2>博主尊称:{{name}}</h2>
        <h2>博主性别:{{sex}}</h2>
        <el-button type="primary" icon="el-icon-s-promotion" @click="skip">点我跳转到博主博客</el-button>
    </div>
</template>

<script>

export default {
    name:'Blogger',
    data() {
        return {
            name:'才疏学浅的小缘同学',
            sex:'帅哥',
            msg:'青衫烟雨客,似是故人来',
        }
    },
    methods:{
        skip() {
        window.location.href="https://xiaoyuan.blog.csdn.net/"
        }
    }
}
</script>

<style>
    .blogger{
        text-align: center;
    }
</style>

实现效果

 less-loader版本过高导致安装不了的情况

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

才疏学浅的小缘同学

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值