=====================================================
Dalam dunia pengembangan Vue, scoped slots memungkinkan Anda untuk membuat komponen yang dapat digunakan secara fleksibel dan dapat diisi dengan konten yang berbeda. Dalam artikel ini, kita akan membahas lebih lanjut tentang scoped slots dan bagaimana cara menggunakan mereka dalam proyek Vue Anda.
** Menggunakan Tag untuk Default Slot**
Saat Anda ingin menggunakan v-slot directive pada komponen, Anda perlu menggunakan tag <template>
untuk slot default. Jika tidak, Anda akan mendapatkan error kompilasi. Tujuan dari hal ini adalah untuk menghindari ambiguitas tentang scope props di slot default.
Contoh:
<!-- <MyComponent> template -->
<div>
<slot :message="hello"></slot>
<slot name="footer" />
</div>
Contoh yang tidak akan Compile
Saat Anda menggunakan v-slot directive pada komponen tanpa tag <template>
untuk slot default, maka Anda tidak dapat menggunakan props dari slot default di dalam bagian lain. Contoh:
<MyComponent v-slot="{ message }">
<p>{{ message }}</p>
<template #footer>
<!-- message belongs to the default slot, and is not available here -->
<p>{{ message }}</p>
</template>
</MyComponent>
Menggunakan Tag untuk Default Slot
Untuk menghindari masalah tersebut, Anda dapat menggunakan tag <template>
untuk slot default seperti berikut:
<MyComponent>
<!-- Use explicit default slot -->
<template #default="{ message }">
<p>{{ message }}</p>
</template>
<template #footer>
<p>Here's some contact info</p>
</template>
</MyComponent>
Contoh Fancy List
Saat Anda menggunakan scoped slots, Anda dapat membuat komponen yang dapat digunakan secara fleksibel. Contohnya, Anda dapat membuat komponen <FancyList>
yang dapat menampilkan daftar item dengan gaya dan format yang berbeda.
Contoh:
<FancyList :api-url="url" :per-page="10">
<template #item="{ body, username, likes }">
<div class="item">
<p>{{ body }}</p>
<p>by {{ username }} | {{ likes }} likes</p>
</div>
</template>
</FancyList>
Komponen Renderless
Saat Anda membuat komponen yang hanya mengandung logika dan tidak menampilkan apapun, maka Anda dapat menggunakan scoped slots untuk mendefinisikan bagaimana komponen tersebut harus digunakan. Contohnya, Anda dapat membuat komponen <MouseTracker>
yang dapat memantau posisi mouse.
Contoh:
<MouseTracker v-slot="{ x, y }">
Mouse is at: {{ x }}, {{ y }}
</MouseTracker>
SLOT Systems Limited
SLOT Systems Limited adalah perusahaan retail terkemuka untuk smartphone dan aksesorinya yang sangat awetan dan murah. Perusahaan ini memungkinkan Anda untuk membeli produk elektronik dengan harga yang sangat kompetitif.
Hubungi Kami:
Email: [email protected]
Hotline Free 24/7:07005000050
Add: 84 Obafemi Awolowo way, Ikeja, Lagos
Existe Um Slot Móvel Lucky Wizard
Georges Broemmé – Dari tahun 1885, aromas dan sabor yang setia pada produknya
GACORX500: Situs Slot Gacor Hari ini & Daftar Link Slot …
Anda tidak dapat mengakses halaman ini karena Anda telah diblokir. Anda dapat menghubungi situs web untuk meminta bantuan.
Namun, sebelum kita lanjut ke sana, mari kita berbicara tentang scoped slots dan bagaimana cara menggunakan mereka dalam proyek Vue Anda.