Vue $root、$parent、$refs
发布时间:2020-12-14 01:08:18 所属栏目:Linux 来源:网络整理
导读:? Vue处理边界 parent、$refs 下面的功能都是有风险的,尽量避免使用 Vue 子组件可以通过 $root 属性访问父组件实例的属性和方法 div id= "app" root-obj / root-obj / div Vue.component( ‘root-obj‘,{ data() { return { } }, template: `div button @cl
?Vue处理边界下面的功能都是有风险的,尽量避免使用
<div id="app"> <root-obj></root-obj> </div> Vue.component(‘root-obj‘,{ data() { return { } },template: `<div> <button @click=‘getRoot‘>$Root</button> </div>`,methods: { getRoot() { console.log(this) console.log(this.$root) } } }) var app = new Vue({ el: ‘#app‘,data: { msg: ‘Root‘ } })
<div id="app"> <root-obj></root-obj> </div> Vue.component(‘root-obj‘,template: `<div> <button @click=‘getRoot‘>子组件</button> <child-component></child-component> </div>`,methods: { getRoot() { console.log(this) console.log(this.$root) console.log(this.$parent) } } }) Vue.component(‘child-component‘,template: `<div> <button @click=‘getRoot‘>子子组件</button> </div>`,methods: { getRoot() { console.log(this) console.log(this.$root) console.log(this.$parent) } } }) var app = new Vue({ el: ‘#app‘,data: { msg: ‘Root‘ } })
$refs 访问子组件实例
<button @click=‘refView‘>通过ref访问子组件</button> Vue.component(‘base-input‘,{ data() { return { msg: ‘base-input‘ } },template: `<input type=‘text‘/>` }) var app = new Vue({ el: ‘#app‘,data: { msg: ‘Root‘ },methods: { refView() { console.log(this.$refs.baseInput) this.$refs.baseInput.$el.focus() } } })
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |