vue獲取DOM元素並設置屬性

這裏我想到了2個方法:vue

方法一:this

直接給相應的元素加id,而後再document.getElementById("id");獲取,而後設置相應屬性或樣式;spa

方法二:code

使用ref,給相應的元素加ref=「name」 而後再this.$refs.name獲取到該元素,而且能夠直接調用子組件中定義的方法;component

 

注意:blog

一、在獲取相應元素以前,必須在mounted生命週期進行掛載,不然獲取到的值爲空;生命週期

二、若是是給子組件加id並修改自定義屬性,則直接會加載該子組件對應的外層div上,並不會改變該子組件本來的自定義屬性的值;get

三、若是給子組件加ref,而後獲取到該DOM元素以後改變相應的自定義屬性的值,vue會報錯:it

 Avoid mutating a prop directly since the value will be overwritten whenever the parent component re-renders. Instead, use a data or computed property based on the prop's value. Prop being mutated: "title"
相關文章
相關標籤/搜索