1. 程式人生 > >Vue中$refs的用法

Vue中$refs的用法

屬性 source PE body cdn har oct template color

說明: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/[email protected]/dist/vue.js"></script> <style> </style> </head> <body> <div id="vue_app"> <qinwm ref="vue_qinwm"></qinwm> <p ref
="vue_p">Hello, world!</p> <button @click="getRef">getRef</button> </div> </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>

Vue中$refs的用法