最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

vue組件中添加@click失效問題及解決

 更新時間:2024年08月16日 15:19:58   作者:小何同學-  
這篇文章主要介紹了vue組件中添加@click失效問題及解決,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教

vue組件中添加@click失效

遇到了一個非常蠢的bug,在vue組件中添加click事件無效,@click.native也無效

想添加一個click事件來切換歌曲

<div class="playlist">
<div class="playItem" v-for="(item,i) in playlist.tracks" :key="item.id"  @click="setPlayIndex(i)"></div>
</div>

結(jié)果click事件一直無效,試了@click.native也無效,總之很多網(wǎng)上別的方法都試過了都不行...

查看事件監(jiān)聽器也有click,但是是怎么回事呢?

原來是!

我之前在歌單組件playlist里面寫了個z-index:-1;

 .playlist{
      width: 7.5rem;
      padding: 0 0.4rem;
      background: linear-gradient(rgba(255,255,255,.7),rgba(255,255,255,1));
      position: relative;
      top: -0.5rem;
      border-top-right-radius: 1rem;
      border-top-left-radius: 1rem;
      z-index:-1;
}

然后其實一直點擊不到而已!

刪掉就好了。

@click失效?@click.native

問題描述

練習uniapp開發(fā)的時候,封裝好了一個組件,但是給組件綁定了@click事件后,事件卻沒有執(zhí)行。

主要代碼如下

<div class="row" v-for="item in newsArr" :key="item.id">
	<newsbox :item="item" @click="goDetail(item)"></newsbox>
</div>


//跳轉(zhuǎn)到詳情頁
goDetail(item){				
	uni.navigateTo({
		url:`/pages/detail/detail?cid=${item.classid}&id=${item.id}`
				})
},

newsbox是我自己封裝的一個組件,問題就出在這兒,newsbox是子組件,想要直接在父組件觸發(fā)click方法,直接寫上@click是不能觸發(fā)方法的。

這時候需要在@click.native就可以解決了,可是為什么呢

官網(wǎng)的解釋

你可能想在某個組件的根元素上監(jiān)聽一個原生事件。可以使用 v-on 的修飾符 .native 。

通俗點講

就是在父組件中給子組件綁定一個原生的事件,就將子組件變成了普通的HTML標簽,不加’. native’事件是無法觸 發(fā)的。

可以理解為該修飾符的作用就是把一個vue組件轉(zhuǎn)化為一個普通的HTML標簽,并且該修飾符對普通HTML標簽是沒有任何作用的。

更細一點來講

是因為使用.native之后父級組件可以像處理原生的DOM事件一樣通過 v-on 監(jiān)聽子組件實例的任意事件(@即為v-on:的簡寫),如果不加natvie,會認為監(jiān)聽的是來自子組件自定義的事件,然而子組件內(nèi)也沒有使用$emit()來將子組件的觸發(fā)事件拋出,因此onSubmit()方法沒有執(zhí)行。

這里也引出了對綁定@click無效有兩種解決方法

  • 在組件上綁定@click.native=”XXX”,
  • 子組件中添加 this.$emit (“click” ,value) 方法 將子組件的值傳到父組件。

但是這種方法相對麻煩,比如組件中有多個事件,需要重復添加 $emit () 方法。

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • vue中引入路徑@的用法及說明

    vue中引入路徑@的用法及說明

    這篇文章主要介紹了vue中引入路徑@的用法及說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-09-09
  • Vue實現(xiàn)各種動態(tài)路由生成的技巧分享

    Vue實現(xiàn)各種動態(tài)路由生成的技巧分享

    Vue.js是一種流行的JavaScript框架,用于構(gòu)建用戶界面,Vue具有靈活的路由功能,可以根據(jù)特定需求動態(tài)生成路由,本文將介紹Vue動態(tài)路由生成的常見實現(xiàn)方法,并提供相應的源代碼示例,需要的朋友可以參考下
    2025-07-07
  • Vue+Openlayer實現(xiàn)圖形的拖動和旋轉(zhuǎn)變形效果

    Vue+Openlayer實現(xiàn)圖形的拖動和旋轉(zhuǎn)變形效果

    Openlayer具有自己的擴展插件ol-ext,可以用來實現(xiàn)圖形的拖拽、旋轉(zhuǎn)、縮放、拉伸、移動等操作,本文將主要介紹通過Openlayer實現(xiàn)圖形的拖動和旋轉(zhuǎn),需要的同學可以學習一下
    2021-11-11
  • vue+element-ui實現(xiàn)頭部導航欄組件

    vue+element-ui實現(xiàn)頭部導航欄組件

    這篇文章主要為大家詳細介紹了vue+element-ui實現(xiàn)頭部導航欄組件,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-09-09
  • vue3中使用pinia(大菠蘿)狀態(tài)管理倉庫的項目實踐

    vue3中使用pinia(大菠蘿)狀態(tài)管理倉庫的項目實踐

    本文主要介紹了vue3中使用pinia(大菠蘿)狀態(tài)管理倉庫,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-07-07
  • Vue+Element的后臺管理框架的整合實踐

    Vue+Element的后臺管理框架的整合實踐

    本文主要介紹了Vue+Element的后臺管理框架,在框架上,領(lǐng)導要用AdminLTE這套模板,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-09-09
  • vue+echarts繪制省份地圖并添加自定義標注方式

    vue+echarts繪制省份地圖并添加自定義標注方式

    這篇文章主要介紹了vue+echarts繪制省份地圖并添加自定義標注方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-04-04
  • windows下vue-cli及webpack搭建安裝環(huán)境

    windows下vue-cli及webpack搭建安裝環(huán)境

    這篇文章主要介紹了windows下vue-cli及webpack搭建安裝環(huán)境,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-04-04
  • 解決Vue-cli npm run build生產(chǎn)環(huán)境打包,本地不能打開的問題

    解決Vue-cli npm run build生產(chǎn)環(huán)境打包,本地不能打開的問題

    今天小編就為大家分享一篇解決Vue-cli npm run build生產(chǎn)環(huán)境打包,本地不能打開的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-09-09
  • vue3動態(tài)路由刷新出現(xiàn)空白頁的原因與最優(yōu)解

    vue3動態(tài)路由刷新出現(xiàn)空白頁的原因與最優(yōu)解

    頁面刷新白屏其實是因為vuex引起的,由于刷新頁面vuex數(shù)據(jù)會丟失,這篇文章主要給大家介紹了關(guān)于vue3動態(tài)路由刷新出現(xiàn)空白頁的原因與最優(yōu)解的相關(guān)資料,需要的朋友可以參考下
    2023-11-11

最新評論

深圳市| 凤台县| 渝北区| 胶州市| 香河县| 海晏县| 绥棱县| 庄河市| 安吉县| 浏阳市| 丁青县| 孟津县| 会昌县| 台州市| 鄯善县| 安龙县| 宁陕县| 兴和县| 波密县| 齐齐哈尔市| 云浮市| 乌拉特后旗| 宿州市| 武功县| 山东| 泊头市| 钦州市| 元谋县| 久治县| 丰县| 大石桥市| 宁河县| 宝坻区| 葫芦岛市| 丰县| 岗巴县| 屯留县| 揭阳市| 尼木县| 平塘县| 建德市|