Rumah  >  Soal Jawab  >  teks badan

Meningkatkan templat Vuejs dengan komponen bersyarat

Saya mempunyai senarai acara yang berbeza seperti yang ditunjukkan di bawah, ia diimport sebagai logTypes

export default {
  LOGIN: "login",
  LOGOUT: "logout",
}

Untuk dua acara ini saya ada 2 komponen berbeza.

<LogTypeLogin :item="item" />
<LogTypeLogout :item="item" />

Dalam templat saya, saya ada ini

<template #item.event="{ item }">
  <div v-else-if="item.action === logTypes.LOGIN">
     <LogTypeLogin :item="item" />
  </div>
  <div v-else-if="item.action === logTypes.LOGOUT">
     <LogTypeLogout :item="item" />
  </div>
  <div v-else>
    Nothing
  </div>
</template>

Semuanya berfungsi dengan baik tetapi saya mahu menjadikannya lebih mudah dibaca

di <template #item.event="{ item }">

Saya ingin mengulang logTypes dan pilih komponen berdasarkan itu dan bukannya jika dan lain-lain?

Sebarang bantuan pasti bagus. terima kasih.

P粉790819727P粉790819727168 hari yang lalu331

membalas semua(1)saya akan balas

  • P粉511757848

    P粉5117578482024-04-04 10:39:01

    Cuba gunakan LOGINLOGOUT 命名组件,如 logTypes Objek:

    components:{
       LOGIN:LogTypeLogin ,
       LOGOUT:LogTypeLogout
    }
    

    Kemudian gunakan komponen terbina dalam component 并将 is 属性绑定到 item.action :

    
    
    

    balas
    0
  • Batalbalas