这篇文章主要介绍“Vue中ref特性如何使用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Vue中ref特性如何使用”文章能帮助大家解决问题。
一、ref的基本使用
ref
的使用
<!-- `vm.$refs.p`将会是DOM结点 --><p ref="p">hello</p><!-- `vm.$refs.child`将会是子组件实例 --><child-component ref="child"></child-component>
如果在普通的 DOM 元素上使用,引用指向的就是DOM 元素如果用在子组件上,引用就指向组件实例
深入理解$refs
某组件的$refs
含有该组件的所有ref
,看下面的例子
<div id="app"> <p ref="p">hello</p> <child-component ref="child"></child-component></div><script>Vue.component('child-component', { template: '<h2>child-component </h2>'})let vm = new Vue({ el: '#app'})</script>
vm.$refs
返回了一个对象,这个对象内有两个成员,包含了vm实例的所有refvm.$refs.p
是DOM 元素vm.$refs.child
是组件实例
二、实战:通过ref获取子组件data
看下面的例子
<div id="app"> <counter ref="child1" @change="handleChange"></counter> <counter ref="child2" @change="handleChange"></counter> <div>{{sum}}</div></div><script>// counter组件,实现每点击一次,自增1Vue.component('counter', { template: '<h4 @click="handleClick">{{count}}</h4>', data() { return { count: 0 } }, methods: { handleClick() { this.count += 1; this.$emit('change') } }})let vm = new Vue({ el: '#app', data: { sum: 0 }, methods: { handleChange() { this.sum = this.$refs.child1.count + this.$refs.child2.count // 使用refs获取子组件的数据 } }})</script>
为什么要使用Vue
Vue是一款友好的、多用途且高性能的JavaScript框架,使用vue可以创建可维护性和可测试性更强的代码库,Vue允许可以将一个网页分割成可复用的组件,每个组件都包含属于自己的HTML、CSS、JavaScript,以用来渲染网页中相应的地方,所以越来越多的前端开发者使用vue。
关于“Vue中ref特性如何使用”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注编程网行业资讯频道,小编每天都会为大家更新不同的知识点。