$refs 只会在组件渲染完成之后生效,并且它们不是响应式的。这仅作为一个用于直接操作子组件的“逃生舱”——你应该避免在模板或计算属性中访问 $refs
// 子组件sw-body内代码
data() {
return {
name: 'lance'
}
}
methods: {
show() { console.log('hello world') }
}
=========================================================
// 父组件内代码
// DOM元素
<div ref="div"></div>
// 组件
<sw-body ref="body"></sw-body>
// 引用
mounted() {
this.$refs.div.innerHTML = "我是div"
this.$refs.body.$el.innerHTML = "我是子组件body";
console.log(this.$refs.body.name) // lance
console.log(this.$refs.body.show()) // hello world
}