如果你想要使用Vue獲取一個(gè)元素,那么你需要使用一些特殊的Vue指令。Vue自動(dòng)地操作DOM元素并創(chuàng)建Vue實(shí)例,使得通過指令來獲取元素異常容易。
Hello, World!
這個(gè)例子中,我們使用了ref指令來標(biāo)注h1元素。在mounted函數(shù)內(nèi)部,我們可以使用this.$refs訪問這個(gè)元素,然后我們將title元素作為一個(gè)對(duì)象打印出來。
上面的Vue代碼中,我們傳入了el選項(xiàng)來初始化Vue,并在mounted鉤子函數(shù)內(nèi)部訪問DOM。我們使用了$refs對(duì)象來獲取元素。
上面的例子中,我們使用了$refs對(duì)象來獲取一個(gè)文本框中的值。然后我們?cè)邳c(diǎn)擊登錄按鈕時(shí),使用了這個(gè)值來進(jìn)行后續(xù)處理。在事件處理函數(shù)中訪問$refs對(duì)象,它將返回DOM節(jié)點(diǎn)對(duì)象,你可以通過value屬性來獲取節(jié)點(diǎn)的值。
Vue的refs不止可以用于DOM元素,還可以用于其它類型的組件。在你使用$refs訪問某個(gè)子組件的時(shí)候,$refs會(huì)自動(dòng)地訪問子組件的實(shí)例,從而讓你可以訪問組件的各項(xiàng)屬性。
上面的例子中,我們?cè)诟附M件中引入了一個(gè)名為MyComponent的子組件,并賦值給了一個(gè)名為myComponentInstance的變量。在mounted鉤子函數(shù)中,我們調(diào)用了myComponentInstance.doSomething方法,這個(gè)方法是MyComponent組件中的一個(gè)公共方法。
在Vue中獲取元素和子組件非常簡單,只需要使用一個(gè)特殊的指令或者訪問一個(gè)特殊的屬性即可。我們只需要簡單地標(biāo)注出需要獲取的元素,然后在Vue實(shí)例中使用$refs來獲得節(jié)點(diǎn)對(duì)象即可。