欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

vue3?emits事件使用示例詳解

 更新時間:2023年07月03日 11:27:09   作者:CUI_PING  
這篇文章主要為大家介紹了vue3?emits事件使用示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

使用說明

emits: 列表聲明從父組件繼承來的事件

$emit: 拋出事件, 通知父組件處理

在子組件中,通過$emit()來觸發(fā)事件

在父組件中,通過v-on來監(jiān)聽子組件事件

子組件中

export default {
  name: "MyXgPlayer",
  //聲明從父組件繼承來的事件:可以是簡單數(shù)組, 也可以是對象(加了校驗函數(shù))
  emits: ['just-one-player'],
  props:{
    domId: String,
    previewVideoUrl: String,
  },
  setup(props, context){
    //獲取當(dāng)前實例(包括從父組件傳過來的props數(shù)據(jù), 實例方法($watch,$emit, $forceUpdate,$nextTick, 定義的全局的$addHost
    // vue 內(nèi)含的$alert,$message,$messageBox, $store,$router, $refs ...))
    const {proxy} = getCurrentInstance()
    let player = ref(null)
    onMounted(()=>{
        //new 數(shù)據(jù)
        player.value = new Player ({
        id: props.domId,
        url: props.previewVideoUrl,
      });
      //監(jiān)聽play 事件
      player.value.on('play', ()=>{
        console.log("start $emit")
        //給父組件拋事件
        proxy.$emit("just-one-player", props.domId, player)    
      })
    })
  },
}

父組件中

<my-xg-player 
                :dom-id="'xgplayer_test_'+file.collection_id"
                  :preview-video-url="file.file_path"
                  @justOnePlayer="justOnePlayer"
                  />
<!--script中-->
import {ref} from "vue"
setup(props, context){
   const xgplayers = ref({})
   const justOnePlayer = (domId, player)=>{
          console.log("receive $emit")
          for(let item_key in state.xgplayers){
            if(item_key !== domId){
              state.xgplayers[item_key].pause()
            }
          }
          state.xgplayers[domId] = player
        }
    return {
        xgplayers,
        justOnePlayer
      }
    }
}

點擊子組件中的播放,打印的log

start $emit
receive $emit

以上就是vue3 emits事件使用示例詳解的詳細(xì)內(nèi)容,更多關(guān)于vue3 emits事件的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 詳解Vue實戰(zhàn)指南之依賴注入(provide/inject)

    詳解Vue實戰(zhàn)指南之依賴注入(provide/inject)

    這篇文章主要介紹了詳解Vue實戰(zhàn)指南之依賴注入(provide/inject),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-11-11
  • vue如何循環(huán)給對象賦值

    vue如何循環(huán)給對象賦值

    這篇文章主要介紹了vue如何循環(huán)給對象賦值,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-04-04
  • 如何理解Vue的render函數(shù)的具體用法

    如何理解Vue的render函數(shù)的具體用法

    本篇文章主要介紹了如何理解Vue的render函數(shù)的具體用法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-08-08
  • Vue中獲取圖片高度的兩種方法

    Vue中獲取圖片高度的兩種方法

    在使用Vue2開發(fā)移動端頁面的時候,需要做一個效果,實現(xiàn)的方案是背景漸變,但是想要實現(xiàn)這個效果就必須進(jìn)行定位,我的背景高度需要在一個十分恰當(dāng)?shù)奈恢?但是我的圖片會隨著移動端頁面的變化而發(fā)生高度的變化,為什么會變化?所以本文介紹了Vue中獲取圖片高度的方法
    2024-08-08
  • vue實現(xiàn)給某個數(shù)據(jù)字段添加顏色

    vue實現(xiàn)給某個數(shù)據(jù)字段添加顏色

    這篇文章主要介紹了vue實現(xiàn)給某個數(shù)據(jù)字段添加顏色方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-03-03
  • vue3如何監(jiān)聽頁面的滾動

    vue3如何監(jiān)聽頁面的滾動

    這篇文章主要給大家介紹了關(guān)于vue3如何監(jiān)聽頁面的滾動的相關(guān)資料,在vue中實現(xiàn)滾動監(jiān)聽和原生js無太大差異,文中通過圖文介紹的非常詳細(xì),需要的朋友可以參考下
    2023-07-07
  • Vue3 + CSS實現(xiàn)一個噴火龍動畫效果

    Vue3 + CSS實現(xiàn)一個噴火龍動畫效果

    不知不覺中,2023年已然逝去了,龍年到了,所以本文小編使用Vue3 + CSS實現(xiàn)一個噴火龍的動畫效果,文中有相關(guān)的代碼示例供大家參考,具有一定的參考價值,感興趣的同學(xué)可以自己動手嘗試一下
    2024-02-02
  • 如何搭建一個完整的Vue3.0+ts的項目步驟

    如何搭建一個完整的Vue3.0+ts的項目步驟

    這篇文章主要介紹了如何搭建一個完整的Vue3.0+ts的項目步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-10-10
  • vue實現(xiàn)input文本框只能輸入0-99的正整數(shù)問題

    vue實現(xiàn)input文本框只能輸入0-99的正整數(shù)問題

    這篇文章主要介紹了vue實現(xiàn)input文本框只能輸入0-99的正整數(shù)問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-10-10
  • Vue中引用assets中圖片的實現(xiàn)方式

    Vue中引用assets中圖片的實現(xiàn)方式

    這篇文章主要介紹了Vue中引用assets中圖片的實現(xiàn)方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-10-10

最新評論