Vue click事件:在vue中,我們可以通過(guò)@click指令來(lái)監(jiān)聽(tīng)用戶的鼠標(biāo)點(diǎn)擊事件。點(diǎn)擊事件會(huì)觸發(fā)指定的方法,從而執(zhí)行一些操作。下面是一個(gè)簡(jiǎn)單的例子:
//html <div id="app"> <button @click="handleClick">點(diǎn)擊我</button> </div> //JS new Vue({ el: '#app', methods: { handleClick: function () { alert('你點(diǎn)擊了按鈕!') } } })
以上代碼會(huì)在按鈕點(diǎn)擊時(shí)彈出一個(gè)對(duì)話框,并顯示“你點(diǎn)擊了按鈕!”字樣。我們可以看到,在Vue中,只需要在綁定的元素上使用@click指令,并指定調(diào)用的方法即可實(shí)現(xiàn)簡(jiǎn)單的點(diǎn)擊事件響應(yīng)。
除了@click指令,Vue還提供了其他指令來(lái)監(jiān)聽(tīng)各種事件。例如,用@input指令監(jiān)聽(tīng)用戶在輸入框中輸入內(nèi)容時(shí)的變化,用@submit指令監(jiān)聽(tīng)表單提交事件等。
需要注意的是,在Vue的template中,我們不可以直接使用JavaScript表達(dá)式,例如,我們不能直接在@click指令中寫(xiě)人:@click="alert('Hello, Vue!')" 這樣是不起作用的。我們需要把要執(zhí)行的代碼寫(xiě)在methods方法中,然后通過(guò)@click指令來(lái)調(diào)用。這是因?yàn)閂ue把模板編譯成render函數(shù),而這些JavaScript表達(dá)式在編譯時(shí)是無(wú)法處理的。