vue如何給自定義的組件綁定點(diǎn)擊事件
給自定義的組件綁定點(diǎn)擊事件
在做項(xiàng)目中我們往往會(huì)封裝許多的組件,來(lái)減少代碼的重復(fù)性,提高代碼的可利用性,有時(shí)候也會(huì)給組件綁定事件,但是經(jīng)常會(huì)失效。
先給cardinfo這個(gè)組件綁定一個(gè)點(diǎn)擊事件
? ? ?<cardinfo ? ? ? ? :content="content" ? ? ? ? :from="from" ? ? ? ? :ProPortrait="ProPortrait" ? ? ? />
一般都是這樣給點(diǎn)擊事件,可是有時(shí)候這個(gè)事件是沒(méi)用的,因?yàn)檫@個(gè)事件是引用組件頁(yè)面的事件,而不是組件本身的事件,所以組件內(nèi)不能識(shí)別這個(gè)事件的來(lái)源。
? ? ?<cardinfo ? ? ? ?@click="goodclick" ? ? ? ? :content="content" ? ? ? ? :from="from" ? ? ? ? :ProPortrait="ProPortrait" ? ? ? />
在@click后面加native表示的是當(dāng)前頁(yè)面的事件
? <cardinfo ? ? ? ? @click.native="goodclick" ? ? ? ? :content="content" ? ? ? ? :from="from" ? ? ? ? :ProPortrait="ProPortrait" ? ? ? />
給自定義組件添加單擊事件
自己定義了一個(gè)按鈕按組件
<template>
? <div>
? ? ?<div class="endBtn">
? ? ? ?<van-button type="danger" block color="linear-gradient( to left ,#F24B0B, #FF4A44 )">{{btnMsg}}</van-button>
? ? </div>
? </div>
</template><script>
export default {
? name: 'UiEndbutton',
? props:["btnMsg"],
? data() {
? ? return {
? ? ??
? ? };
? },
? mounted() {
? ??
? },
? methods: {
? ??
? },
};
</script><style lang="stylus" scoped> ? ?.endBtn ? ? ? width: 345px ? ? ? height: 44px ? ? ? border-radius: 4px ? ? ? background: radial-gradient(#F24B0B ?100%,#FF4A44 ? 100%); ? ? ? margin-top: 15px ? ? ? margin-left: 15px </style>
在其他的頁(yè)面引用這個(gè)組件
引入
import EndButton from '@/components/EndButton.vue';
export default {
? name: 'UiEndyuyuetransfer',
? ?components:{
? ? ?PageTop,
? ? ? YuyueDetailItem,
? ? ? EndButton,
? ?},
? ?methods:{
? ?toEndYuyueTransferResult(){
? ?this.$router.push({name:"EndYuyueTransferResult"})
? ?}
? ?}
}在頁(yè)面中
<end-button btnMsg="終止" @click="toEndYuyueTransferResult"></end-button>
點(diǎn)擊按鈕你會(huì)發(fā)現(xiàn),方法沒(méi)有被觸發(fā)。
給vue組件綁定事件時(shí)候,必須加上native ,否則會(huì)認(rèn)為監(jiān)聽(tīng)的是來(lái)自Item組件自定義的事件。
<end-button btnMsg="終止" @click.native="toEndYuyueTransferResult"></end-button>
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
原生JS實(shí)現(xiàn)Vue transition fade過(guò)渡動(dòng)畫效果示例
這篇文章主要為大家介紹了原生JS實(shí)現(xiàn)Vue transition fade過(guò)渡動(dòng)畫效果示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-06-06
Vue2 配置 Axios api 接口調(diào)用文件的方法
本篇文章主要介紹了Vue2 配置 Axios api 接口調(diào)用文件的方法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-11-11
詳解基于vue-router的動(dòng)態(tài)權(quán)限控制實(shí)現(xiàn)方案
本篇文章主要介紹了詳解基于vue-router的動(dòng)態(tài)權(quán)限實(shí)現(xiàn)方案,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-09-09
解決cordova+vue 項(xiàng)目打包成APK應(yīng)用遇到的問(wèn)題
這篇文章主要介紹了解決cordova+vue 項(xiàng)目打包成APK應(yīng)用遇到的問(wèn)題,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-05-05
vue調(diào)試工具vue-devtools安裝及使用方法
本文主要介紹 vue的調(diào)試工具 vue-devtools 的安裝和使用,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2018-11-11
vue項(xiàng)目代碼格式規(guī)范設(shè)置參考指南
這篇文章主要給大家介紹了關(guān)于vue3簡(jiǎn)單封裝input組件和統(tǒng)一表單數(shù)據(jù)的相關(guān)資料,不管你學(xué)習(xí)哪一門編程語(yǔ)言,相信大家都會(huì)略化這一部分,需要的朋友可以參考下2022-05-05

