搜尋

首頁  >  問答  >  主體

使用 Options API 處理 vue 3 發出的訊號

有沒有一種方法可以在 vue 3 Options API 中輸入與 Composition API 類似的發射? 根據組合方式(文件):

<script setup lang="ts">
// type-based
const emit = defineEmits<{
  (e: 'change', id: number): void
  (e: 'update', value: string): void
}>()
</script>

但是對於選項 API,我們只有有效負載驗證(文件):

emits: {
    addBook(payload: { bookName: string }) {
      // perform runtime validation
      return payload.bookName.length > 0
    }
  }

因此,如果我們不需要驗證,eslint 會將參數視為未使用:

emits: {
    change: (id: number) => true // 'id' is defined but never used
}


#
P粉994092873P粉994092873347 天前479

全部回覆(1)我來回復

  • P粉811349112

    P粉8113491122024-01-01 14:50:31

    新增忽略註解來消除警告:

    // eslint-disable-next-line no-unused-vars @typescript-eslint/no-unused-vars
    change: (id: number) => true
    

    或對 id 進行簡單的驗證:

    change: (id: number) => typeof id === 'number'
    

    回覆
    0
  • 取消回覆