فهرست سرفصل‌های 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 — ویژگی های توکار (Built-in Attributes)

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

ویژگی های توکار (Built-in Attributes)

در Vue چند «ویژگی توکار» وجود دارد. این ویژگی ها مستقیم روی تگ ها می آیند. «is»، «key» و «ref» هرکدام کار مشخصی دارند. سپس با مثال های خیلی ساده می بینیم چه می کنند.

مرور سریع ویژگی های توکار

is (ایز): کامپوننت پویا را تعیین می کند. یعنی الان کدام کامپوننت فعال است.

key (کی): برای آیتم های تکراری با v-for یک شناسه یکتا می دهد.

ref (رف): به یک عنصر اشاره گر می دهد تا بعداً در اسکریپت دستکاری شود.

نمونه استفاده از is برای کامپوننت پویا

<template>
  <component :is="activeComp"></component>
</template>

<script setup>
  import { ref } from 'vue';
  const activeComp = ref('comp-one');
<\/script>

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

نکته: با تغییر مقدار activeComp بین نام کامپوننت ها جابه جا می شوید.

نمونه استفاده از key در v-for

<template>
  <ol>
    <li v-for="x in products" :key="x">
      {{ x }}
    </li>
  </ol>
</template>

<script setup>
  import { ref } from 'vue';
  const products = ref(['Apple', 'Pizza', 'Rice']);
<\/script>

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

هشدار: مقدار key باید یکتا باشد؛ تکراری باعث باگ می شود.

نمونه استفاده از ref برای دسترسی به DOM

<template>
  <input ref="inp" placeholder="Focus me">
  <button @click="focusIt">Focus</button>
</template>

<script setup>
  import { ref } from 'vue';
  const inp = ref(null);
  function focusIt() {
    if (inp.value) {
      inp.value.focus();
    }
  }
<\/script>

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

گام های عملی

  1. نیاز را مشخص کن: پویا، لیست، یا دسترسی DOM.
  2. اگر پویا است، از is استفاده کن.
  3. اگر لیست است، برای هر آیتم key یکتا بده.
  4. اگر DOM لازم است، عنصر را با ref بگیر.

جمع بندی سریع

  • is کامپوننت فعال را تعیین می کند.
  • key در v-for باید یکتا باشد.
  • ref دسترسی مستقیم به عنصر می دهد.
  • همیشه ساده و خوانا کدنویسی کن.

مطالب مرتبط: Composition API (Composition API)