Memaparkan komponen Vue secara dinamik dalam komponen lain
<p>Menggunakan<strong>Vue 3.2.41</strong>-@heroicons/vue 2.0.14-inertiajs 1.0-vite 4.0.0</p>
<p>Saya menggunakan ini untuk memanggil komponen Vue: </p>
<p><kod><TimelineItem icon="CalendarDaysIcon" /></code></p>
<p>Komponen kelihatan seperti ini: </p>
<pre class="brush:php;toolbar:false;"><template>
<komponen :is="ikon" <!-- tidak berfungsi -->
<CalendarDaysIcon /> <!-- berfungsi -->
</template>
<persediaan skrip>
import {
CalendarDaysIcon,
} daripada '@heroicons/vue/20/solid'
const props = defineProps(['icon'])
</script></pre>
<p>HTML yang diberikan kelihatan seperti ini:</p>
<pre class="brush:php;toolbar:false;"><calendardaysicon></calendardaysicon> <!-- bukan yang saya mahu -->
<svg> ... </svg> <!-- betul tetapi tidak dinamik
<p>Dalam erti kata lain, apabila saya mahu <code><komponen :is /></code> untuk memaparkan komponen, ia hanya menjadikan beberapa <code><calendardaysicon></code> ; Saya dapat melihat bahawa ia telah menukarnya kepada huruf kecil dan saya tidak tahu bagaimana untuk memaksanya kembali ke PascalCase, saya tidak pasti sama ada itu akan membantu keadaan. </p>
<p>Saya telah mempermudahkan sedikit kod, tetapi versi penuh akan mempunyai senarai 10 ikon berbeza (semua bahagian pakej Heroicons menggunakan nama PascalCase) dan saya mahu dapat memanggilnya dengan mudah daripada komponen utama .</p>