Vue關(guān)于自定義事件的$event傳參問題
vue自定義事件的$event傳參
1.$event 是 vue 提供的特殊變量,用來表示原生的事件參數(shù)對象 event。
2.在原生事件中,$event是事件對象,在自定義事件中,$event是傳遞過來的數(shù)據(jù)(參數(shù))
如果遇到子組件向父組件傳數(shù)據(jù),需要用到自定義事件來處理,此時我們在父組件上監(jiān)聽那個自定義事件,并且需要接收子組件傳過來的參數(shù),同時我們自己還想傳遞一個參數(shù)給下面方法
父組件
父組件監(jiān)聽自定義事件的定義的方法
此時上面的那個$event不再是原生的事件對象e,而是用來接收子組件傳遞過來的數(shù)據(jù)(參數(shù))
vue事件參數(shù)$event
$event是事件對象的特殊變量,在一些場景能給我們實現(xiàn)復雜功能提供更多可用的參數(shù)
原生事件
在原生事件中表現(xiàn)和默認的事件對象相同
<template> <div> <input type="text" @input="inputHandler( hello , $event)" /> </div> </template>
export default { methods: { inputHandler(msg, e) { console.log(e.target.value) } } }
自定義事件
在自定義事件中表現(xiàn)為捕獲從子組件拋出的值
my-item.vue :
export default { methods: { customEvent() { this.$emit( custom-event , some value ) } } }
App.vue
<template> <div> <my-item v-for="(item, index) in list" @custom-event="customEvent(index, $event)"> </my-list> </div> </template>
export default { methods: { customEvent(index, e) { console.log(e) // some value } } }
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
vue項目部署到nginx/tomcat服務器的實現(xiàn)
這篇文章主要介紹了vue項目部署到nginx/tomcat服務器的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-08-08前端Vue?select下拉框使用以及監(jiān)聽事件詳解
由于前端項目使用的是Vue.js和bootstrap整合開發(fā),中間用到了select下拉框,這篇文章主要給大家介紹了關(guān)于前端Vue?select下拉框使用以及監(jiān)聽事件的相關(guān)資料,需要的朋友可以參考下2024-03-03使用Vite+Vue3+TypeScript?搭建開發(fā)腳手架的詳細過程
這篇文章主要介紹了Vite+Vue3+TypeScript?搭建開發(fā)腳手架的詳細過程,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-02-02Vue Router之router.push和router.resolve頁面跳轉(zhuǎn)方式
這篇文章主要介紹了Vue Router之router.push和router.resolve頁面跳轉(zhuǎn)方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2025-04-04