Vue的自定義組件不能使用click方法的解決
先貼代碼
var myButton = Vue.extend({//設(shè)置標(biāo)簽 props: [’names’, ’item2’],//names為按鈕名,item2為數(shù)據(jù) template: ’<span><span v-for='obj in item2' v-if='obj.name==names' v-html='obj.code'></span></span>’ }) Vue.component(’my-button’, myButton);//注冊(cè)組件
這是上篇博客的自定義按鈕權(quán)限的代碼,然后調(diào)用代碼:
<my-button names='修改' v-bind:item2='btdata'></my-button>
當(dāng)你在這個(gè)標(biāo)簽上加@click事件的時(shí)候報(bào)錯(cuò),原因是因?yàn)闆](méi)有加上native,官網(wǎng)對(duì)于native的解釋為:
.native - 監(jiān)聽(tīng)組件根元素的原生事件。
正確的代碼為:
<my-button @click.native='alert1()' names='刪除' v-bind:item2='btdata'></my-button>
這樣就能成功在自定義標(biāo)簽上綁定事件了
補(bǔ)充知識(shí):Vue中利用component切換組件
我就廢話不多說(shuō)了,大家還是直接看代碼吧~
<!DOCTYPE html><html lang='en'><head> <meta charset='UTF-8'> <meta name='viewport' content='width=device-width, initial-scale=1.0'> <meta http-equiv='X-UA-Compatible' content='ie=edge'> <title>Document</title> <script src='http://www.leifengta.com.cn/bcjs/vue.js'></script></head><body> <div id='app'> <a href='http://www.leifengta.com.cn/bcjs/11206.html#' rel='external nofollow' rel='external nofollow' @click='componentName=’mycom1’'>組件1</a> <a href='http://www.leifengta.com.cn/bcjs/11206.html#' rel='external nofollow' rel='external nofollow' @click='componentName=’mycom2’'>組件2</a> <component :is='componentName'></component> </div></body><script> Vue.component(’mycom1’,{ //注意無(wú)論是哪種方式創(chuàng)建組件,template都只能有一個(gè)唯一的根元素 template: ’<h3>組件1</h3>’,//指定組件要展示的html結(jié)構(gòu) }) Vue.component(’mycom2’,{ //注意無(wú)論是哪種方式創(chuàng)建組件,template都只能有一個(gè)唯一的根元素 template: ’<h3>組件2</h3>’,//指定組件要展示的html結(jié)構(gòu) }) //創(chuàng)建一個(gè)vue實(shí)例 //當(dāng)我們導(dǎo)入包之后,在瀏覽器的內(nèi)存中就多了一個(gè)vue構(gòu)造函數(shù) var vm = new Vue({ el: ’#app’,//表示當(dāng)前我們new的這個(gè)vue實(shí)例要控制頁(yè)面上的哪個(gè)區(qū)域 data: { //data屬性中存放的是el中要用到的數(shù)據(jù) componentName: ’mycom1’ } }); </script></html>
以上這篇Vue的自定義組件不能使用click方法的解決就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. 詳解Android studio 動(dòng)態(tài)fragment的用法2. Android如何加載Base64編碼格式圖片3. 解決Android studio xml界面無(wú)法預(yù)覽問(wèn)題4. 圖文詳解vue中proto文件的函數(shù)調(diào)用5. 什么是python的自省6. Spring Boot和Thymeleaf整合結(jié)合JPA實(shí)現(xiàn)分頁(yè)效果(實(shí)例代碼)7. Vuex localStorage的具體使用8. php模擬實(shí)現(xiàn)斗地主發(fā)牌9. vue 使用localstorage實(shí)現(xiàn)面包屑的操作10. Vue封裝一個(gè)TodoList的案例與瀏覽器本地緩存的應(yīng)用實(shí)現(xiàn)

網(wǎng)公網(wǎng)安備