当前位置: 首页 > news >正文

外墙设计装修效果图软件seo接单

外墙设计装修效果图软件,seo接单,不属于第三方b2b电子商务平台,银川网站建设联系电话欢迎大家订阅【Vue2Vue3】入门到实践 专栏,开启你的 Vue 学习之旅! 文章目录 1 scoped样式1.1 全局样式1.2 局部样式1.3 工作原理2 data函数 1 scoped样式 1.1 全局样式 全局样式是指作用于整个应用程序的样式,不论在哪个组件中定义&#x…

欢迎大家订阅【Vue2+Vue3】入门到实践 专栏,开启你的 Vue 学习之旅!

文章目录

  • 1 scoped样式
  • 1.1 全局样式
  • 1.2 局部样式
  • 1.3 工作原理
  • 2 data函数


1 scoped样式

1.1 全局样式

全局样式是指作用于整个应用程序的样式,不论在哪个组件中定义,都能影响到所有具有相同元素的组件。
在 Vue 中,若在组件的 <style> 标签中没有使用 scoped,则该样式会自动成为全局样式,影响到所有同样的 HTML 元素。

【示例】
BaseOne.vue

<template><div>BaseOne</div>
</template><script>
export default {}
</script><style>
/* 
默认的style样式会作用于全局 -> 全局样式
*/
div{border:3px solid blue;margin:30px;
}
</style>>

BaseTwo.vue

<template><div>BaseTwo</div>
</template><script>
export default {}
</script><style></style>

App.vue

<template><div><BaseOne></BaseOne><BaseTwo></BaseTwo></div>
</template><script>
// 在 <script> 标签内
import BaseOne from './components/BaseOne.vue';
import BaseTwo from './components/BaseTwo.vue';export default {components: {BaseOne,BaseTwo}
}
</script><style></style>

运行结果:
在这里插入图片描述
从上图可知,BaseOne.vue 中定义的全局样式不仅影响了 BaseOne 组件中的 div 元素,还影响了 BaseTwo 组件中的 div 元素

1.2 局部样式

局部样式仅适用于当前组件,避免了全局样式的污染。
在 Vue 中,通过在 <style> 标签上添加 scoped 属性,可以限制样式的作用范围,仅影响当前组件内的元素,而不会影响其他组件中的相同元素。

【示例】
修改 BaseOne.vue 的代码,为其添加 scoped 属性来限制样式的作用范围:
在这里插入图片描述
运行结果:
在这里插入图片描述
添加 scoped 后,样式将只作用于 BaseOne.vue 中的 div 元素,而不再影响 BaseTwo.vue 中的 div 元素。

1.3 工作原理

Vue 实现 scoped 样式的方式是通过给每个元素添加一个唯一的 data-v-xxxx 属性,并且在样式选择器中增加这个属性作为条件,以确保样式只作用于当前组件的元素。

【示例】
BaseOne.vue

<template><div>BaseOne<span>111</span><a href="">链接</a></div>
</template><script>
export default {}
</script><style>
/* 
默认的style样式会作用于全局 -> 全局样式
*/
div{border:3px solid blue;margin:30px;
}
</style>>

BaseTwo.vue

<template><div>BaseTwo</div>
</template><script>
export default {}
</script><style scoped>
div{border:3px solid red;margin:30px;
}
</style>

运行结果:
在这里插入图片描述
【Scoped 样式的工作机制】
1. 添加 data-v-hash 属性
Vue 会为每个组件的元素添加一个唯一的 data-v-hash 属性(例如 data-v-5f6a9d56),该属性仅在当前组件中存在。

2. 修改样式选择器
Vue 会自动将样式选择器修改为 div[data-v-5f6a9d56],样式只会作用于带有 data-v-hash 属性的元素。

3. 同一组件的 hash 值相同
Vue 会确保同一组件中的所有元素的 data-v-hash 属性相同,从而保证它们共享相同的样式。

2 data函数

在 Vue 中,组件的 data 选项必须是一个返回对象的函数,确保每个组件实例都有独立的数据对象。

为什么 data 是一个函数?
Vue 会创建一个新的组件实例时,每个组件实例都需要一份独立的 data 对象。如果 data 是一个对象而不是函数,所有组件实例将共享同一个数据对象,从而导致数据污染和不可预期的行为。

【示例】
BaseCount.vue

<template><div class="base-count"><button @click="count--">-</button><span>{{ count }}</span><button @click="count++">+</button></div>
</template><script>
export default {data: function () {return {count: 100,}},
}
</script><style>
.base-count {margin: 20px;
}
</style>

App.vue

<template><div class="app"><BaseCount></BaseCount><BaseCount></BaseCount><BaseCount></BaseCount></div>
</template><script>
import BaseCount from './components/BaseCount'
export default {components: {BaseCount,},
}
</script><style>
</style>

运行结果:
在这里插入图片描述
在 App.vue 中,创建了三个 <BaseCount> 组件实例。每次 Vue 创建新的 BaseCount 实例时,都会执行 data 函数,返回一个新的对象。
每个 BaseCount 组件都有独立的 count 数据,初始值为 100。点击某个组件的加减按钮时,只有该组件的 count 值会发生变化,而其他组件的 count 数据不受影响。

http://www.hkea.cn/news/934821/

相关文章:

  • 十堰城市建设网站制作自己的网站
  • 传媒网站建设公司深圳百度seo优化
  • 公司需要网站 该怎么做公司推广咨询
  • 高中男女做那个视频网站seo做的好的网站
  • 网站建设 摄影服务上海seo网站排名优化公司
  • 网页设计中html代码seo博客网站
  • 怎样建设小游戏网站google关键词搜索技巧
  • 淘宝 客要推广网站怎么做全媒体广告代理
  • 那个b2b网站可以做外贸武汉全网推广
  • 深圳css3网站开发多少钱如何策划一个营销方案
  • 织梦统计网站访问量代码网络营销公司如何建立
  • 外贸营销型网站建设今日最新重大新闻
  • 个性化定制网站长春网络推广优化
  • 合肥庐阳区疫情最新消息seo优化首页
  • h5网站制作接单最新中高风险地区名单
  • 北京市住房城乡建设委网站公司怎么在网上推广
  • 网站建设首页怎样插入视频百度指数在线查询小程序
  • 青州网站制作哪家好aso优化哪家好
  • wordpress做网站优点郑州网站seo优化
  • 宝安做棋牌网站建设找哪家公司好湖南长沙疫情最新消息
  • 四川专业网站建设中国十大企业培训机构排名
  • 怎么切页面做网站灰色词首页排名接单
  • 网站右侧浮动广告代码百度推广代理公司广州
  • 固原建站公司旺道seo推广系统怎么收费
  • 适合做外链的网站海外广告联盟平台推广
  • 建筑模板规格型号郑州厉害的seo顾问
  • ppt做书模板下载网站有哪些内容国际婚恋网站排名
  • 上海网站建设内容更新网络营销策划目的
  • 重庆市建设信息网站关键词查询网
  • 做哪种网站流量大怎么打广告宣传自己的产品