المان های توکار (Built-in Elements)
ویو چند «المان توکار (Built-in Element)» دارد. این ها تگ های آماده اند. آن ها کارهای خاص می کنند و کدتو ساده تر می کنند.
فهرست المان های توکار در Vue
سه مورد در منبع آمده است: <component> برای کامپوننت دینامیک، <slot> برای دریافت محتوای والد، و <template> برای نگهدار محتوا بدون رندر مستقیم.
<component> : کامپوننت دینامیک
کامپوننت دینامیک یعنی نوع کامپوننت با داده تغییر می کند. مثل تعویض صفحه در اپ کلاس.
<template>
<component :is="active"></component>
</template>
<script>
export default {
data() {
return {
active: "comp-one"
};
}
};
<\/script>
<slot> : دریافت محتوا از والد
اسلات (Slot) یعنی جای خالی برای متن یا عناصر والد. مثل جیب کیف برای دفتر.
<template>
<div class="card">
<slot></slot>
</div>
</template>
<template> : نگهدار بی صدا
تِمپلِیت (Template) خودش رندر نمی شود. فقط بچه ها را نگه می دارد. مثل پوشه شفاف بی عنوان.
<template v-if="ok">
<p>این متن وقتی ok باشد نمایش می شود.</p>
</template>
<script>
export default {
data() {
return {
ok: true
};
}
};
<\/script>
گام های عملی
- <component> را با :is تنظیم کن.
- برای محتوای والد از <slot> استفاده کن.
- گروه بندی موقت را با <template> انجام بده.
نکته: نام ها را ساده و معنی دار نگه دار. بعداً تغییر آسان تر است.
لینک های داخلی پیشنهادی
راهنمای ترنزیشن گروپ در Vue و ترنزیشن در Vue را نیز ببین.
جمع بندی سریع
- <component> کامپوننت دینامیک می سازد.
- <slot> محتوا را از والد می گیرد.
- <template> خودش رندر نمی شود.
- قواعد را ساده نگه دار.