Vue组件化学习之scoped

2023-11-13

简介

主要介绍scoped的作用。

先弄一个案例:
在这里插入图片描述
main.js:

//引入vue依赖
import Vue from 'vue'
//引入组件App
import App from './App.vue'

// 关闭生产提示
Vue.config.productionTip = false

//创建一个vue实例
new Vue({
  //这个目前还没学过,先知道他的作用是将app放入容器中。
  render: h => h(App),

  //配置该vue实例管理id为app的容器
}).$mount('#app')

App.vue:

<template>
    <!-- 编写结构 -->
    <div>
        <school></school>
    <hr>
    <student></student>
    </div>
</template>

<script>
// 原本的引入
// import school from "./School.vue"
// import student from "./Student.vue"

//修改后的
//引入school组件和student组件,涉及es模块化的语法
import school from "./components/School.vue"
import student from "./components/Student.vue"

export default {


    components:{
        //注册组件
        school,
        student
    }
}
</script>

<style>

</style>

School.vue:

<template>
    <!-- 编写组件结构代码,也就是html代码 -->
    <!-- 需要一个div括住,也就是只能有一个根元素,一般使用div -->
    <div class="orange">
        <div>学校:{{schoolName}}</div>
        <div>地址:{{schoolAddress}}</div>
    </div>
</template>

<script>
//交互代码编写的地方,需要暴露出去给其他地方引入
//这个需要有一点es6模块化的知识,这里一般使用默认暴露,因为这是单文件组件,只需要暴露一个组件对象,
//并且引入默认暴露的组件引入语法比较简单。
export default {
    data() {
        return {
        schoolName:"尚硅谷",
        schoolAddress:"北京"
        }
    },
}
</script>

<style>
    /* 编写样式的地方 */
    .orange{
        background-color: orange;
    }
</style>

student.vue:

<template>
    <!-- 编写组件结构代码,也就是html代码 -->
    <!-- 需要一个div括住,也就是只能有一个根元素,一般使用div -->
    <div class="orange">
        <div>学生姓名:{{studentName}}</div>
        <div>年龄:{{studentAge}}</div>
    </div>
</template>

<script>
//交互代码编写的地方,需要暴露出去给其他地方引入
//这个需要有一点es6模块化的知识,这里一般使用默认暴露,因为这是单文件组件,只需要暴露一个组件对象,
//并且引入默认暴露的组件引入语法比较简单。
export default {
    data() {
        return {
        studentName:"张三",
        studentAge:18
        }
    },
}
</script>

<style>
    /* 编写样式的地方 */
    .orange{
        background-color: gray;
    }
</style>

效果:
在这里插入图片描述
看两个组件的样式代码,都使用了同名的orange类来设置样式,但是一个设置背景颜色为橙色,一个为灰色,父组件App最后会汇总所有子组件中的样式,这样的话,这两个样式设置就冲突了,所以导致School组件的背景色本来应该是橙色的,但是变成灰色了。

所以,引入scoped的作用:使样式在局部生效,防止冲突。

添加在style标签中的,

在这里插入图片描述
结果:
在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Vue组件化学习之scoped 的相关文章

随机推荐

  • quartz的分布式调度

    https segmentfault com a 1190000015492260 quartz 数据库表含义解释 彻底拆分 一切可控 CSDN博客 Spring整合Quartz分布式调度 Java烂猪皮 CSDN博客 java quart
  • 点积、内积、外积、叉积、张量积——概念区分

    找张量积概念的时候 被各种野路子博客引入的各种 积 搞混了 下面仅以Wikipedia为标准记录各种积的概念 点积 Dot product https en wikipedia org wiki Dot product 在数学中 点积 Do
  • 【linux】常用shell指令 [不断补充中...]

    前言 shell是一种脚本语言 需要有编译器执行 即 应用程序 gt shell gt 操作系统 gt 硬件 bash是linux下默认的shell sh是unix下默认的shell 多命令执行 xx xx 前面执行成功才会执行后面的命令
  • springboot怎么使用

    Spring Boot是一个用于快速构建企业级应用程序的框架 提供了许多方便使用的功能 使用Spring Boot需要具备一定的Java编程基础 以下是使用Spring Boot的一般步骤 安装Java开发环境和任意一个IDE 如Intel
  • VUE实现token登录验证

    实现这个登录功能的过程真是一波三折 中途出现了bug 整了两三天才解决了问题 心力交瘁 简直一个头两个大 感觉自己的毅力和耐心又提升了一个层次ORZ 好在最终在同学的帮助下解决了bug 不过我又再次感受到了作为一个菜鸟的浅薄 大佬的问题屡次
  • Ubuntu与Windows下的Firefox账号不能同步解决方式【内附Ubuntu桌面图标制作方法】

    Ubuntu下的Firefox是国际版 属于全球服务 而Windows下的Firefox是本地服务的 两个系统下默认的存储服务器不是一个 无法同步 解决办法 卸载掉Ubuntu系统下原来的Firefox 安装Firefox中国版 安装方法
  • Mac如何找到从AppStore下载的正版Xcode安装包

    前言 本文介绍在Mac下如何找到AppStore下载的安装包路径 以及如何提取出来供以后使用 希望对大家有所帮助 前提 想要提取某个安装包 前提是你正在从AppStore安装这个程序 比如你想提取imovie的安装包 前提是你必须正在从Ap
  • Cocos2d-x JSB 自动绑定bindings-generator (以下简称B-G) 使用心得

    文章转载自 http www cocoachina com bbs read php tid 177904 B G 是什么 当使用JSB的时候 如果你想要使用的C 的类或者方法没有在已有JSB中被绑定 这时候 就可以使用B G 它可以生成相
  • 目标检测可视化gt

    xml格式可视化 这里分了两类 1 目标被标注为正矩形 即 xmin ymin xmax ymax 一般的voc数据类型都是这种标注形式 2 目标被标注为具有一定旋转角度的矩形 即 x1 y1 x2 y2 x3 y3 x4 y4 DOTA数
  • 如何将CRM系统上传到服务器,如何将SAP CRM equipment通过中间件上传到ERP系统

    In document Step by step to download equipment from ERP with hierarchy the steps to replicate equipment from ERP to CRM
  • 网页中如何使背景固定位置不变

    网页中如何使背景固定位置不变 在draemweaver中按Ctrl Shift E 新建一CSS样式 new 在background标签里 可以设定背景的各个选项 Background 背景色Background Image 选取你的背景图
  • 用户登录日志表为user_id,log_id,session_id,visit_time

    数据信息 用户登录日志表为user id log id session id visit time 要求 用sql查询近30天每天平均登录用户数量 代码展示 select avg numUser as averageUsers from s
  • MFC干净地删除冗余控件

    1 手动删除 1 首先确定控件有哪些相关的变量和函数 打开 rc2文件在里面删除对应的控件图标 2 打开主对话框头文件 一般类向导生成的函数和变量定义都在头文件的最后一个 public l里 找到生成的变量定义和函数定义将其删除 3 打开对
  • 在ros2下使用ros1_bridge与ros1自定义消息桥接

    在ros2下使用ros1 bridge与ros1自定义消息桥接 示例环境 操作系统 ubuntu 20 04 amd64 ros版本 noetic ros2版本 foxy ros1示例代码 创建ros1的工作空间catkin ws 功能包c
  • AXI4-Stream协议总结

    AXI4 Stream去掉了地址项 允许无限制的数据突发传输规模 一 接口信号描述 信号 源 描述 ACLK 时钟源 全局时钟信号 所有信号在ACLK信号上升沿采样 ARESETn 复位源 全局复位信号 ARESETn低电平有效 TVALI
  • JDBC规范——(8)异常

    当访问一个数据源时发生错误或者警告 JDBC 用 SQLException 这个类及其子类来表示并提供相关的异常信息 8 1 SQLException SQLException 由一下几部分组成 1 描述错误的文本信息 可以通过 SQLEx
  • Aspose功能演示:使用Java以编程方式在 Excel 文件中添加或修改 VBA 宏

    VBA是一种编程语言 用于在 MS Excel 文件中自动执行各种操作 特别是 VBA 宏是用户定义的代码 可加速电子表格操作任务 在本文中 将学习如何以编程方式使用 Excel 文件中的 VBA 宏 最终 将能够 使用 Java 在 Ex
  • 树莓派配置热点(即设置wifi)

    https www raspberrypi org documentation configuration wireless access point routed md 如果官网打不开 看次链接 https qinfeng blog cs
  • rollup常用插件盘点

    1 rollup plugin commonjs 将 CommonJS 模块转换为 ES2015 供 Rollup 处理 rollup plugin commonjs是一个用于将CommonJS模块转换为ES6模块的Rollup插件 它的主
  • Vue组件化学习之scoped

    简介 主要介绍scoped的作用 先弄一个案例 main js 引入vue依赖 import Vue from vue 引入组件App import App from App vue 关闭生产提示 Vue config production