酷乐教育
您的当前位置:首页Vue中$refs的用法

Vue中$refs的用法

来源:酷乐教育


这篇文章主要介绍了Vue中$refs的用法,非常不错,具有一定的参考借鉴价值 ,需要的朋友可以参考下

说明:vm.$refs 一个对象,持有已注册过 ref 的所有子组件(或HTML元素)

使用:在 HTML元素 中,添加ref属性,然后在JS中通过vm.$refs.属性来获取

注意:如果获取的是一个子组件,那么通过ref就能获取到子组件中的data和methods

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>Document</title>
 <!-- <script type="text/javascript" src="https://cdn.bootcss.com/jquery/3.3.1/jquery.min.js"></script> -->
 <script src="https://cdn.jsdelivr.net/npm/vue@2.5.16/dist/vue.js"></script>
 <style>
 </style>
</head>
<body>
 <p id="vue_app">
 <qinwm ref="vue_qinwm"></qinwm>
 <p ref="vue_p">Hello, world!</p>
 <button @click="getRef">getRef</button>
 </p>
</body>
</html>
<script>
 Vue.component("qinwm", {
 template: `<h1>{{msg}}</h1>`,
 data(){
 return {
 msg: "Hello, world!"
 };
 },
 methods:{
 func:function (){
 console.log("Func!");
 }
 }
 });
 new Vue({
 el: "#vue_app",
 data(){
 return {};
 },
 methods: {
 getRef () {
 console.log(this.$refs);
 console.log(this.$refs.vue_p); // <p>Hello, world!</p>
 console.log(this.$refs.vue_qinwm.msg); // Hello, world!
 console.log(this.$refs.vue_qinwm.func); // func:function (){ console.log("Func!"); }
 this.$refs.vue_qinwm.func(); // Func!
 }
 }
 });
</script>
显示全文