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

青岛市北区网站制作公司济南seo网站优化公司

青岛市北区网站制作公司,济南seo网站优化公司,郑州网站设计推荐,wordpress百度统计代码1、$refs与$parent 1)概述: $refs用于:父——>子。$parent用于:子——>父。 2)原理如下: 属性说明$refs值为对象,包含所有被ref属性标识的DOM元素或组件实例。$parent值为对象&#x…

1、$refs与$parent

1)概述:

  • $refs用于:父——>子。
  • $parent用于:子——>父。

2)原理如下:

属性说明
$refs值为对象,包含所有被ref属性标识的DOM元素或组件实例。
$parent值为对象,当前组件的父组件实例对象

$refs 包含所有子组件的实例对象 

<template><div class="father"><h3>父组件</h3><h4>房产:{{house}}</h4><button @click="changeToy">修改Child1的玩具</button><button @click="changeComputer">修改Child2的电脑</button><button @click="getAllChild($refs)">获取所有子组件的实例对象</button><Child1 ref="c1"/><Child2 ref="c2" /></div>
</template><script setup lang="ts" name="Father">import Child1 from './Child1.vue'import Child2 from './Child2.vue'import {ref} from "vue"let c1 = ref()let c2 = ref()// 数据let house = ref(4)// 方法function changeToy(){console.log(c1.value)c1.value.toy = '小猪佩奇'}function changeComputer(){c1.value.computer= '华为'}function getAllChild([refs:any}){for(let key in refs){console.log(refs[key])refs[key]+=3}}// 向外部提供数据defineExpose({house})</script>
<template><div class="child1"><h3>子组件1</h3><h4>玩具:{{toy}} 个</h4><h4>书籍:{{book}} 本</h4><button @click="minusHouse($parent)">干掉父亲的一套房产</button></div>
</template><script setup lang="ts" name="Child1">import {ref} from "vue"//数据let toy = ref('奥特曼')let book = ref(3)//方法function minusHouse(parent:any){console.log(parent)parent.house -= 1}// 把数据交给外部defineExpose({toy,book})</script>
<template><div class="child2"><h3>子组件2</h3><h4>电脑:{{computer}}</h4><h4>书籍:{{book}} 本</h4></div>
</template><script setup lang="ts" name="Child2">import {ref} from "vue"//数据let computer= ref('奥特曼')let book = ref(6)// 把数据交给外部defineExpose({computer,book})
</script>

一个注意点,有时候.value,有时候不需要:

let obj = reactive({ a:1,b:2,c:ref(3)})  let x = ref(4)

console.log(obj.a) console.log(obj.b) console.log(obj.c)//自动解包

console.log(x.value)

2、provide-inject

<template><div class="father"><h3>父组件2</h3><h4>银子:{{money}}万元</h4><h4>车子:一辆{{car.brand}}车,价值{{car.price}}万元</h4><Child/></div>
</template><script setup lang="ts" name="Child2">import Child from './Child.vue'import {ref,reactive,provide} from "vue"let money = ref(100)let car = reactive({brand:'奔驰',price:100})function updateMoney(value){money.value -= value}// 向后代提供数据provide('qian',{money,updateMoney})provide('che',car)
</script>
<template><div class="grand-child"><h3>我是孙组件</h3><h4>银子:{{x}}</h4><h4>车子:一辆{{car.brand}}车,价值{{car.price}}万元</h4><button @click="updateMoney(6)">花爷爷的钱</button></div>
</template><script setup lang="ts" name="GrandChild">import {inject} from 'vue'let {money,updateMoney} = inject('qian',{money:0,updateMoney:(x:number)=>{}})let car= inject('che',{brand:'未知',price:0}) //通过默认值隐慧教推断</script>
http://www.fp688.cn/news/154149.html

相关文章:

  • 各网站的网络联盟seo是什么意思广东话
  • iis发布html网站推广赚钱app
  • 东莞万江做网站seo广告投放是什么意思
  • 常州哪家网站建设公司专业产品线上营销方案
  • 网站续费怎么做帐网站站长
  • 做网站卖东西送上门爱站seo工具
  • html网站制作模板企业品牌推广
  • 基金公司网站建设方案搜狗竞价推广效果怎么样
  • 徐州h5建站模板网站大全软件下载
  • 电商个人网站建设网站优化 seo和sem
  • 公司做网站有问题怎么维权真正免费建站网站
  • 武汉商城网站制作免费建网站
  • 网站建设浩森宇特深圳网络营销推广外包
  • 基本型电子商务网站宁波seo推荐推广渠道
  • 做微博长图的网站哈尔滨seo优化公司
  • wordpress的functions.php谷歌推广和seo
  • 域名网站建设方案sem竞价专员
  • 重庆政府网站建设推广软文是什么意思
  • 长沙网页设计哪家专业优化网站找哪家
  • 学历提升专升本seo服务哪家好
  • 做网站收益网站软件开发
  • dede怎么做网站百度竞价推广技巧
  • ps制作网站过程b站推广怎么买
  • 怎么查一个网站的外链网站统计数据分析
  • 湘潭网站建设整合营销是什么
  • 深圳网站建设总部2022最新小学生新闻
  • 晋中seo排名优化百度搜索
  • 风景区网站建设论文范文推荐几个靠谱的网站
  • 网站如何做su无锡网络推广外包
  • 街道网站建设站长工具百科