Vue ref 獲取DOM元素


1.獲取組件中的DOM元素
 
 <div id="app">
    <!-- Vue獲取DOM元素 -->
    <button @click="show">點擊獲取元素的屬性</button>
    <h3 ref="myh3">Vue獲取元素的屬性</h3>
  </div>
  <script>

   new Vue({
    el:"#app",
    data:{
      
    },
    methods:{
     show:function(){
      //  通過 this.$refs對象獲取屬性值為 "myh3"的DOM元素
      //  this.$refs.myh3 獲取到h3 元素
      console.log(this.$refs.myh3.innerHTML)
     } 
    }
    
   })
 
 </script>

 

2.獲取子組件

 <div id="app">
    <!-- Vue獲取DOM元素 -->
    <button @click="show">點擊獲取元素的屬性</button>
    <h3 ref="myh3">Vue獲取元素的屬性</h3>
    <hr>
    <login ref="mySon"></login>
  </div>


  <template id="temp">
    <h3>這是子組件</h3>
  </template>
  <script>



    var login = {
      template:"#temp",
      data:function(){
        return {
          msg:"這是子組件中的數據"
        }
      },
      methods:{
        showSon:function(){
          console.log("這是兒子的方法")
        }
      }
    }


   new Vue({
    el:"#app",
    data:{
      
    },
    methods:{
     show:function(){
       //this.$refs.mySon 獲取到子組件 斌給可以獲取到子組件中的數據
      console.log(this.$refs.mySon.msg);  //這是子組件中的數據
      // 通過獲取到的子組件可以 調用子組件中的方法
      this.$refs.mySon.showSon(); //這是兒子的方法
     } 
    },
    components:{
      login,
    }
    
   })

總結:

  原生獲取DOM方法,document.querySelector 來獲取,現在Vue避免直接操作DOM元素,於是提供了refs對象來操作DOM.

  根據 ref 可以獲取到DOM元素和組件,可以獲取到組件就可以直接操作組件的方法和數據。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM