فهرست سرفصل‌های Vue
خانه (HOME) معرفی (Intro) دایرکتیوها (Directives) v-bind (v-bind) v-if (v-if) v-show (v-show) v-for (v-for) رویدادها (Events) v-on (v-on) متدها (Methods) تغییردهنده های رویداد (Event Modifiers) فرم ها (Forms) v-model (v-model) بایندینگ CSS (CSS Binding) ویژگی های محاسبه شده (Computed Properties) واچرها (Watchers) قالب ها (Templates) چرا، چگونه و راه اندازی (Why, How and Setup) اولین صفحه SFC (First SFC Page) کامپوننت ها (Components) پراپس (Props) کامپوننت های v-for (v-for Components) $emit() ($emit()) ویژگی های عبوری (Fallthrough) (Fallthrough Attributes) استایل Scoped (Scoped Styling) کامپوننت های محلی (Local Components) اسلات ها (Slots) v-slot (v-slot) اسلات های Scoped (Scoped Slots) کامپوننت های پویا (Dynamic Components) Teleport (Teleport) درخواست HTTP (HTTP Request) رفرنس های تمپلیت (Template Refs) هوک های چرخه عمر (Lifecycle Hooks) Provide/Inject (Provide/Inject) مسیریابی (Routing) ورودی های فرم (Form Inputs) انیمیشن ها (Animations) انیمیشن با v-for (Animations with v-for) بیلد (Build) Composition API (Composition API) ویژگی های توکار (Built-in Attributes) ویژگی 'is' ('is' Attribute) ویژگی 'key' ('key' Attribute) ویژگی 'ref' ('ref' Attribute) کامپوننت های توکار (Built-in Components) <KeepAlive> (<KeepAlive>) <Teleport> (<Teleport>) <Transition> (<Transition>) <TransitionGroup> (<TransitionGroup>) المان های توکار (Built-in Elements) <component> (<component>) <slot> (<slot>) <template> (<template>) نمونه کامپوننت (Component Instance) $attrs ($attrs) $data ($data) $el ($el) $parent ($parent) $props ($props) $refs ($refs) $root ($root) $slots ($slots) $emit() ($emit()) $forceUpdate() ($forceUpdate()) $nextTick() ($nextTick()) $watch() ($watch()) دایرکتیوها (Directives) v-bind (v-bind) v-cloak (v-cloak) v-for (v-for) v-html (v-html) v-if (v-if) v-else-if (v-else-if) v-else (v-else) v-memo (v-memo) v-model (v-model) v-on (v-on) v-once (v-once) v-pre (v-pre) v-show (v-show) v-slot (v-slot) v-text (v-text) گزینه های نمونه (Instance Options) داده ها (data) متدها (methods) محاسبه شده ها (computed) watch (watch) پراپس (props) emits (emits) expose (expose) هوک های چرخه عمر (Lifecycle Hooks) beforeCreate (beforeCreate) created (created) beforeMount (beforeMount) mounted (mounted) beforeUpdate (beforeUpdate) updated (updated) beforeUnmount (beforeUnmount) unmounted (unmounted) errorCaptured (errorCaptured) renderTracked (renderTracked) renderTriggered (renderTriggered) activated (activated) deactivated (deactivated) serverPrefetch (serverPrefetch) مثال ها (Examples) تمرین ها (Exercises) کوییز (Quiz) سیلابس (Syllabus) برنامه مطالعه (Study Plan) سرور (Server) گواهینامه (Certificate)
نتیجه‌ای برای جستجو یافت نشد.
Vue

Vue — $slots ($slots)

آخرین بروزرسانی: 1404/08/21

$slots ($slots)

«اسلات ها در Vue» یعنی جای خالیِ محتوا که والد پر می کند. آبجکت $slots همه اسلات های ارسال شده از والد را نگه می دارد. سپس می توانیم وجود هر اسلات را چک کنیم. مثل زنگ تفریح که بعضی کلاس ها برنامه ویژه دارند.

تعریف و کاربرد $slots

آبجکت $slots نماینده اسلات های دریافتی از والد است. بنابراین با this.$slots همه اسلات ها دیده می شوند. همچنین با this.$slots.topSlot می توان اسلات نام دار topSlot را بررسی کرد. این بررسی برای نمایش شرطی محتوا بسیار مفید است.

نکته: اگر فقط جابه جایی داده می خواهی، از $props استفاده کن. اگر نیاز به دسترسی ریشه داری، صفحه $root را ببین. برای ارجاع به المنت ها نیز $refs کمک می کند.

مثال: چک کردن وجود اسلات نام دار

در مرحله mounted بررسی می کنیم که آیا والد اسلات topSlot را داده است یا نه. سپس پیام مناسب را در slotsText می گذاریم.

<script>
export default {
  data() {
    return {
      slotsText: "";
    };
  },
  mounted() {
    if (this.$slots.topSlot) {
      this.slotsText = "Content for the 'topSlot' slot is provided by the parent.";
    }
    else {
      this.slotsText = "Content for the 'topSlot' slot is NOT provided by the parent.";
    }
  }
};
<\/script>

مشاهده در ادیتور

راهنمای گام به گام کوتاه

  1. نام اسلات را در والد تعیین کن.
  2. در فرزند، this.$slots[name] را بررسی کن.
  3. بر اساس نتیجه، نمایش را شرطی کن.

هشدار: با وجود مفیدبودن $slots، برای محتوای پیچیده بهتر است از v-slot در قالب ها استفاده کنی تا کد تمیزتر بماند.

جمع بندی سریع

  • $slots لیست اسلات های والد است.
  • با نام اسلات می توان بررسی کرد.
  • نمایش شرطی را ساده می کند.
  • برای الگوی تمیز، از v-slot کمک بگیر.