vue.$refs 的用法

  官網給出的解釋是:html

    被用來給元素或子組件註冊引用信息。引用信息將會註冊在父組件的 $refs 對象上。數組

      1.若是在普通的 DOM 元素上使用,引用指向的就是 DOM 元素;dom

      2.若是用在子組件上,引用就指向組件實例。性能

    eg: this

      <p ref="p"></p>     //  vm.refs.p    指向 DOM節點spa

      <child-temp  ref="child"></child-temp>    //  vm.$refs.child    指向子組件3d

      

    code: code

  上面的實例咱們在調用的時候:htm

     ...對象

     methods: {

        fg(){

          this.$refs.listGroup.style.color = 'red'       //   能夠操做Dom 節點

          console.log(this.$refs.listGroup.length)      //    實例含有v-for  結構,這裏操做的就是 遍歷的數組了。

        }

      }

 

 

    總結:

    使用 $refs 減小了 Dom 操做對頁面的性能影響。

       關於js操做dom 對性能影響 可訪問: http://www.cnblogs.com/yepbug/p/5427213.html 

      

      1.  當 v-for 用於元素或組件的時候,引用信息將是包含 DOM 節點或組件實例的數組。

      2.  關於ref註冊時間的重要說明:

         由於ref自己是做爲渲染結果被建立的,在初始渲染的時候你不能訪問它們 - 它們還不存在!

         $refs 也不是響應式的,所以不該該試圖用它在模版中作數據綁定。

相關文章
相關標籤/搜索