فهرست سرفصل‌های 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 — deactivated (deactivated)

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

deactivated (deactivated)

هوک «deactivated در ویو (Vue)» وقتی کامپوننت کش شده از DOM خارج شود اجرا می شود. «هوک (Hook)» یعنی زمان آماده اجرای کد. «DOM» همان درخت عناصر صفحه است. این خروج نابودکردن نیست؛ فقط کنار گذاشته می شود. مثل وقتی دفترت را موقت از روی میز برمی داری.

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

deactivated زمانی اجرا می شود که یک کامپوننتِ کش شده با <KeepAlive> از DOM برداشته شود، اما نابود نشود. این اتفاق می تواند بارها رخ دهد. بنابراین هر بار خروج، deactivated صدا می شود.

نمونه کد از منبع

در این نمونه، هر بار deactivated اجرا شد، لاگ و ثبت می شود.

export default {
  data() {
    return {
      hookLog: []
    };
  },
  deactivated() {
    console.log("deactivated");
    this.hookLog.push("deactivated");
  }
};

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

تفاوت با unmounted

در unmounted کامپوننت کاملاً نابود می شود. بنابراین حافظه و رویدادها آزاد می شوند. اما در deactivated فقط کنار گذاشته می شود و داده ها باقی می مانند.

گام های عملی

  1. کامپوننت را داخل <KeepAlive> قرار بده.
  2. در deactivated تایمرها و لیسنرهای موقت را متوقف کن.
  3. در activated دوباره آن منابع را شروع کن.

نکته ها و هشدارها

نکته: کارهای سبک پاک سازی را در deactivated انجام بده. بازگشت سریع تر می شود.

هشدار: منابع جدید نساز که یادت برود ببندی. نشت حافظه پیش می آید.

پیوندهای مرتبط

برای ورود دوباره کش، صفحه activated را ببین. برای ساخت اولیه، mounted مناسب است. برای حذف کامل، unmounted را بررسی کن.

جمع بندی سریع

  • deactivated خروجِ موقتِ کامپوننتِ کش شده است.
  • نابودی نیست؛ داده ها حفظ می شوند.
  • منابع موقت را اینجا متوقف کن.
  • با activated دوباره راه اندازی کن.
  • با unmounted اشتباه نگیر.