Skip to content
āĻāχ āĻĒ⧃āĻˇā§āĻ āĻžāϝāĻŧ

Component Instance ​

INFO

āĻāχ āĻĒ⧃āĻˇā§āĻ āĻžāϟāĻŋ āĻ…āĻ¨ā§āϤāĻ°ā§āύāĻŋāĻ°ā§āĻŽāĻŋāϤ āĻŦ⧈āĻļāĻŋāĻˇā§āĻŸā§āϝ āĻāĻŦāĻ‚ āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āϟ āĻĒāĻžāĻŦāϞāĻŋāĻ• āχāύāĻ¸ā§āĻŸā§āϝāĻžāĻ¨ā§āϏ⧇ āωāĻ¨ā§āĻŽā§‹āϚāĻŋāϤ āĻĒāĻĻā§āϧāϤāĻŋāϗ⧁āϞāĻŋ āύāĻĨāĻŋāϭ⧁āĻ•ā§āϤ āĻ•āϰ⧇, āϝ⧇āĻŽāύ thisāĨ¤

āĻāχ āĻĒ⧃āĻˇā§āĻ āĻžāϝāĻŧ āϤāĻžāϞāĻŋāĻ•āĻžāϭ⧁āĻ•ā§āϤ āϏāĻŽāĻ¸ā§āϤ āĻŦ⧈āĻļāĻŋāĻˇā§āĻŸā§āϝ āĻļ⧁āϧ⧁āĻŽāĻžāĻ¤ā§āϰ āĻĒāĻ āύāϝ⧋āĻ—ā§āϝ ($data-āĻ āύ⧇āĻ¸ā§āĻŸā§‡āĻĄ āĻŦ⧈āĻļāĻŋāĻˇā§āĻŸā§āϝāϗ⧁āϞāĻŋ āĻ›āĻžāĻĄāĻŧāĻž)āĨ¤

$data ​

āĻ…āĻŦāĻœā§‡āĻ•ā§āϟāϟāĻŋ data āĻŦāĻŋāĻ•āĻ˛ā§āĻĒ āĻĨ⧇āϕ⧇ āĻĢāĻŋāϰ⧇ āĻāϏ⧇āϛ⧇, āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āϟ āĻĻā§āĻŦāĻžāϰāĻž āĻĒā§āϰāϤāĻŋāĻ•ā§āϰāĻŋāϝāĻŧāĻžāĻļā§€āϞ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇āĨ¤ āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āϟ āχāύāĻ¸ā§āĻŸā§āϝāĻžāĻ¨ā§āϏ āĻĒā§āϰāĻ•ā§āϏāĻŋ āϤāĻžāϰ āĻĄā§‡āϟāĻž āĻ…āĻŦāĻœā§‡āĻ•ā§āĻŸā§‡āϰ āĻŦ⧈āĻļāĻŋāĻˇā§āĻŸā§āϝāϗ⧁āϞāĻŋāϤ⧇ āĻ…ā§āϝāĻžāĻ•ā§āϏ⧇āϏ āĻ•āϰ⧇āĨ¤

  • āϟāĻžāχāĻĒ

    ts
    interface ComponentPublicInstance {
      $data: object
    }

$props ​

āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āϟāϏ āĻŦāĻ°ā§āϤāĻŽāĻžāύ, āϏāĻŽāĻžāϧāĻžāύ āĻ•āϰāĻž āĻĒā§āϰāĻĒāϏ āĻĒā§āϰāϤāĻŋāύāĻŋāϧāĻŋāĻ¤ā§āĻŦāĻ•āĻžāϰ⧀ āĻāĻ•āϟāĻŋ āĻ…āĻŦāĻœā§‡āĻ•ā§āϟāĨ¤

  • āϟāĻžāχāĻĒ

    ts
    interface ComponentPublicInstance {
      $props: object
    }
  • ** āĻŦāĻŋāĻ¸ā§āϤāĻžāϰāĻŋāϤ**

    āĻļ⧁āϧ⧁āĻŽāĻžāĻ¤ā§āϰ props āĻŦāĻŋāĻ•āĻ˛ā§āĻĒ⧇āϰ āĻŽāĻžāĻ§ā§āϝāĻŽā§‡ āĻ˜ā§‹āώāĻŋāϤ āĻĒā§āϰāĻĒāϏ āĻ…āĻ¨ā§āϤāĻ°ā§āϭ⧁āĻ•ā§āϤ āĻ•āϰāĻž āĻšāĻŦ⧇āĨ¤ āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āϟ āχāύāĻ¸ā§āĻŸā§āϝāĻžāĻ¨ā§āϏ āĻĒā§āϰāĻ•ā§āϏāĻŋ āĻāϰ āĻĒā§āϰāĻĒāϏ āĻ…āĻŦāĻœā§‡āĻ•ā§āĻŸā§‡āϰ āĻŦ⧈āĻļāĻŋāĻˇā§āĻŸā§āϝāϗ⧁āϞāĻŋāϤ⧇ āĻ…ā§āϝāĻžāĻ•ā§āϏ⧇āϏ āĻ•āϰ⧇āĨ¤

$el ​

āϰ⧁āϟ DOM āύ⧋āĻĄ āϝāĻž āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āϟ āχāύāĻ¸ā§āĻŸā§āϝāĻžāĻ¨ā§āϏ āĻĒāϰāĻŋāϚāĻžāϞāύāĻž āĻ•āϰāϛ⧇āĨ¤

  • āϟāĻžāχāĻĒ

    ts
    interface ComponentPublicInstance {
      $el: any
    }
  • ** āĻŦāĻŋāĻ¸ā§āϤāĻžāϰāĻŋāϤ**

    āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āϟāϟāĻŋ āĻŽāĻžāωāĻ¨ā§āϟ āĻ•āϰāĻž āύāĻž āĻšāĻ“āϝāĻŧāĻž āĻĒāĻ°ā§āϝāĻ¨ā§āϤ $el āĻ…āϏāĻ‚āĻœā§āĻžāĻžāϝāĻŧāĻŋāϤ āĻĨāĻžāĻ•āĻŦ⧇āĨ¤

    • āĻāĻ•āϟāĻŋ āĻāĻ•āĻ• āĻŽā§‚āϞ āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āϟ āϏāĻš āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āϟāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ, $el āϏ⧇āχ āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āϟāϟāĻŋāϕ⧇ āύāĻŋāĻ°ā§āĻĻ⧇āĻļ āĻ•āϰāĻŦ⧇⧎
    • āĻĒāĻžāĻ ā§āϝ āϰ⧁āϟ āϏāĻš āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āϟāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ, $el āĻĒāĻžāĻ ā§āϝ āύ⧋āĻĄā§‡āϰ āĻĻāĻŋāϕ⧇ āύāĻŋāĻ°ā§āĻĻ⧇āĻļ āĻ•āϰāĻŦ⧇āĨ¤
    • āĻāĻ•āĻžāϧāĻŋāĻ• āϰ⧁āϟ āύ⧋āĻĄ āϏāĻš āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āϟāϗ⧁āϞāĻŋāϰ āϜāĻ¨ā§āϝ, $el āĻšāĻŦ⧇ āĻ¸ā§āĻĨāĻžāύāϧāĻžāϰāĻ• DOM āύ⧋āĻĄ āϝāĻž Vue āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇ DOM-āĻ āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āϟāϏ āĻ…āĻŦāĻ¸ā§āĻĨāĻžāύ⧇āϰ āĻŸā§āĻ°ā§āϝāĻžāĻ• āϰāĻžāĻ–āϤ⧇ (āĻāĻ•āϟāĻŋ āĻĒāĻžāĻ ā§āϝ āύ⧋āĻĄ, āĻŦāĻž SSR āĻšāĻžāχāĻĄā§āϰ⧇āĻļāύ āĻŽā§‹āĻĄā§‡ āĻāĻ•āϟāĻŋ āĻŽāĻ¨ā§āϤāĻŦā§āϝ āύ⧋āĻĄ)āĨ¤

    TIP

    āϏāĻžāĻŽāĻžā§āϜāĻ¸ā§āϝ⧇āϰ āϜāĻ¨ā§āϝ, $el āĻāϰ āωāĻĒāϰ āύāĻŋāĻ°ā§āĻ­āϰ āύāĻž āĻ•āϰ⧇ āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āϟāϗ⧁āϞāĻŋāϤ⧇ āϏāϰāĻžāϏāϰāĻŋ āĻ…ā§āϝāĻžāĻ•ā§āϏ⧇āϏ⧇āϰ āϜāĻ¨ā§āϝ āĻŸā§‡āĻŽāĻĒā§āϞ⧇āϟ āϰ⧇āĻĢāϏ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻžāϰ āĻĒāϰāĻžāĻŽāĻ°ā§āĻļ āĻĻ⧇āĻ“āϝāĻŧāĻž āĻšāϝāĻŧāĨ¤

$options ​

āĻŦāĻ°ā§āϤāĻŽāĻžāύ āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āϟ āχāύāĻ¸ā§āĻŸā§āϝāĻžāĻ¨ā§āϏ āχāύāĻ¸ā§āĻŸā§āϝāĻžāĻ¨ā§āϟ āĻ•āϰāĻžāϰ āϜāĻ¨ā§āϝ āĻŦā§āϝāĻŦāĻšā§ƒāϤ āϏāĻŽāĻžāϧāĻžāύāĻ•ā§ƒāϤ āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āϟ āĻ…āĻĒāĻļāύāĨ¤

  • āϟāĻžāχāĻĒ

    ts
    interface ComponentPublicInstance {
      $options: ComponentOptions
    }
  • ** āĻŦāĻŋāĻ¸ā§āϤāĻžāϰāĻŋāϤ**

    $options āĻ…āĻŦāĻœā§‡āĻ•ā§āϟ āĻŦāĻ°ā§āϤāĻŽāĻžāύ āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āϟāϏ āϜāĻ¨ā§āϝ āϏāĻŽāĻžāϧāĻžāύ āĻ•āϰāĻž āĻŦāĻŋāĻ•āĻ˛ā§āĻĒāϗ⧁āϞāĻŋāϕ⧇ āĻĒā§āϰāĻ•āĻžāĻļ āĻ•āϰ⧇ āĻāĻŦāĻ‚ āĻāχ āϏāĻŽā§āĻ­āĻžāĻŦā§āϝ āωāĻ¤ā§āϏāϗ⧁āϞāĻŋāϰ āĻāĻ•āĻ¤ā§āϰāĻŋāϤ āĻĢāϞāĻžāĻĢāϞ:

    • Global mixins
    • Component extends base
    • Component mixins

    āĻāϟāĻŋ āϏāĻžāϧāĻžāϰāĻŖāϤ āĻ•āĻžāĻ¸ā§āϟāĻŽ āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āϟ āĻŦāĻŋāĻ•āĻ˛ā§āĻĒ āϏāĻŽāĻ°ā§āĻĨāύ āĻ•āϰāϤ⧇ āĻŦā§āϝāĻŦāĻšā§ƒāϤ āĻšāϝāĻŧ:

    js
    const app = createApp({
      customOption: 'foo',
      created() {
        console.log(this.$options.customOption) // => 'foo'
      }
    })
  • āφāϰ⧋ āĻĻ⧇āϖ⧁āύ app.config.optionMergeStrategies

$parent ​

āĻĒā§āϝāĻžāϰ⧇āĻ¨ā§āϟ āχāύāĻ¸ā§āĻŸā§āϝāĻžāĻ¨ā§āϏ, āϝāĻĻāĻŋ āĻŦāĻ°ā§āϤāĻŽāĻžāύ āχāύāĻ¸ā§āĻŸā§āϝāĻžāĻ¨ā§āϏ⧇ āĻāĻ•āϟāĻŋ āĻĨāĻžāϕ⧇āĨ¤ āĻāϟāĻŋ āϰ⧁āϟ āωāĻĻāĻžāĻšāϰāϪ⧇āϰ āϜāĻ¨ā§āϝāχ null āĻšāĻŦ⧇āĨ¤

  • āϟāĻžāχāĻĒ

    ts
    interface ComponentPublicInstance {
      $parent: ComponentPublicInstance | null
    }

$root ​

The root component instance of the current component tree. If the current instance has no parents this value will be itself.

  • āϟāĻžāχāĻĒ

    ts
    interface ComponentPublicInstance {
      $root: ComponentPublicInstance
    }

$slots ​

An object representing the slots passed by the parent component.

  • āϟāĻžāχāĻĒ

    ts
    interface ComponentPublicInstance {
      $slots: { [name: string]: Slot }
    }
    
    type Slot = (...args: any[]) => VNode[]
  • ** āĻŦāĻŋāĻ¸ā§āϤāĻžāϰāĻŋāϤ**

    āϏāĻžāϧāĻžāϰāĻŖāϤ āĻŽā§āϝāĻžāύ⧁āϝāĻŧāĻžāϞāĻŋ āϰ⧇āĻ¨ā§āĻĄāĻžāϰ āĻĢāĻžāĻ‚āĻļāύ āϞ⧇āĻ–āĻžāϰ āϏāĻŽāϝāĻŧ āĻŦā§āϝāĻŦāĻšā§ƒāϤ āĻšāϝāĻŧ, āϤāĻŦ⧇ āĻ¸ā§āϞāϟ āωāĻĒāĻ¸ā§āĻĨāĻŋāϤ āφāϛ⧇ āĻ•āĻŋāύāĻž āϤāĻž āϏāύāĻžāĻ•ā§āϤ āĻ•āϰāϤ⧇āĻ“ āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻž āϝ⧇āϤ⧇ āĻĒāĻžāϰ⧇āĨ¤

    āĻĒā§āϰāϤāĻŋāϟāĻŋ āĻ¸ā§āϞāϟ this.$slots-āĻ āĻāĻ•āϟāĻŋ āĻĢāĻžāĻ‚āĻļāύ āĻšāĻŋāϏ⧇āĻŦ⧇ āωāĻ¨ā§āĻŽā§‹āϚāĻŋāϤ āĻšāϝāĻŧ āϝāĻž āϏ⧇āχ āĻ¸ā§āϞāĻŸā§‡āϰ āύāĻžāĻŽā§‡āϰ āϏāĻžāĻĨ⧇ āϏāĻŽā§āĻĒāĻ°ā§āĻ•āĻŋāϤ āϕ⧀-āĻāϰ āĻ…āϧ⧀āύ⧇ āĻ­āύ⧋āĻĄā§‡āϰ āĻāĻ•āϟāĻŋ āĻ…ā§āϝāĻžāϰ⧇ āĻĒā§āϰāĻĻāĻžāύ āĻ•āϰ⧇āĨ¤ āĻĄāĻŋāĻĢāĻ˛ā§āϟ āĻ¸ā§āϞāϟāϟāĻŋ this.$slots.default āĻšāĻŋāϏ⧇āĻŦ⧇ āĻĒā§āϰāĻ•āĻžāĻļ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇āĨ¤

    āϝāĻĻāĻŋ āĻāĻ•āϟāĻŋ āĻ¸ā§āϞāϟ āĻāĻ•āϟāĻŋ āĻ¸ā§āϕ⧋āĻĒāĻĄ āĻ¸ā§āϞāϟ āĻšāϝāĻŧ, āϤāĻžāĻšāϞ⧇ āĻ¸ā§āϞāϟ āĻĢāĻžāĻ‚āĻļāύ⧇ āĻĒāĻžāϏ āĻ•āϰāĻž āφāĻ°ā§āϗ⧁āĻŽā§‡āĻ¨ā§āϟāϗ⧁āϞāĻŋ āĻ¸ā§āϞāϟ āĻĒā§āϰāĻĒāϏ āĻšāĻŋāϏāĻžāĻŦ⧇ āĻ¸ā§āϞāĻŸā§‡ āωāĻĒāϞāĻŦā§āϧ āĻĨāĻžāϕ⧇āĨ¤

  • āφāϰ⧋ āĻĻ⧇āϖ⧁āύ Render Functions - Rendering Slots

$refs ​

DOM āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āϟ āĻāĻŦāĻ‚ āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āϟ āωāĻĻāĻžāĻšāϰāϪ⧇āϰ āĻāĻ•āϟāĻŋ āĻ…āĻŦāĻœā§‡āĻ•ā§āϟ, āĻāϰ āĻŽāĻžāĻ§ā§āϝāĻŽā§‡ āύāĻŋāĻŦāĻ¨ā§āϧāĻŋāϤ⧎ template refs.

  • āϟāĻžāχāĻĒ

    ts
    interface ComponentPublicInstance {
      $refs: { [name: string]: Element | ComponentPublicInstance | null }
    }
  • āφāϰ⧋ āĻĻ⧇āϖ⧁āύ

$attrs ​

āĻāĻ•āϟāĻŋ āĻ…āĻŦāĻœā§‡āĻ•ā§āϟ āϝāĻž āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āϟāϏ āĻĢāϞ-āĻĨā§āϰ⧁ āĻŦ⧈āĻļāĻŋāĻˇā§āĻŸā§āϝ āϧāĻžāϰāĻŖ āĻ•āϰ⧇āĨ¤

  • āϟāĻžāχāĻĒ

    ts
    interface ComponentPublicInstance {
      $attrs: object
    }
  • ** āĻŦāĻŋāĻ¸ā§āϤāĻžāϰāĻŋāϤ**

    Fallthrough Attributes āĻšāϞ āĻ…ā§āϝāĻžāĻŸā§āϰāĻŋāĻŦāĻŋāωāϟ āĻāĻŦāĻ‚ āχāϭ⧇āĻ¨ā§āϟ āĻšā§āϝāĻžāĻ¨ā§āĻĄāϞāĻžāϰ āϝāĻž āĻĒā§āϝāĻžāϰ⧇āĻ¨ā§āϟ āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āϟ āĻĻā§āĻŦāĻžāϰāĻž āĻĒāĻžāϏ āĻ•āϰāĻž āĻšāϝāĻŧ, āĻ•āĻŋāĻ¨ā§āϤ⧁ āϏāĻ¨ā§āϤāĻžāύ⧇āϰ āĻĻā§āĻŦāĻžāϰāĻž āĻĒā§āϰāĻĒ āĻŦāĻž āύāĻŋāĻ°ā§āĻ—āϤ āχāϭ⧇āĻ¨ā§āϟ āĻšāĻŋāϏāĻžāĻŦ⧇ āĻ˜ā§‹āώāĻŖāĻž āĻ•āϰāĻž āĻšāϝāĻŧ āύāĻžāĨ¤

    āĻĄāĻŋāĻĢāĻ˛ā§āϟāϰ⧂āĻĒ⧇, āĻļ⧁āϧ⧁āĻŽāĻžāĻ¤ā§āϰ āĻāĻ•āϟāĻŋ āϰ⧁āϟ āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āϟ āĻĨāĻžāĻ•āϞ⧇ $attrs-āĻāϰ āϏāĻŦāĻ•āĻŋāϛ⧁ āĻ¸ā§āĻŦāϝāĻŧāĻ‚āĻ•ā§āϰāĻŋāϝāĻŧāĻ­āĻžāĻŦ⧇ āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āĻŸā§‡āϰ āϰ⧁āϟ āĻāϞāĻŋāĻŽā§‡āĻ¨ā§āĻŸā§‡ āωāĻ¤ā§āϤāϰāĻžāϧāĻŋāĻ•āĻžāϰ āϏ⧂āĻ¤ā§āϰ⧇ āĻĒā§āϰāĻžāĻĒā§āϤ āĻšāĻŦ⧇āĨ¤ āĻāχ āφāϚāϰāĻŖāϟāĻŋ āĻ…āĻ•ā§āώāĻŽ āĻ•āϰāĻž āĻšāϝāĻŧ āϝāĻĻāĻŋ āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āϟāϟāĻŋāϰ āĻāĻ•āĻžāϧāĻŋāĻ• āϰ⧁āϟ āύ⧋āĻĄ āĻĨāĻžāϕ⧇ āĻāĻŦāĻ‚ inheritAttrs āĻŦāĻŋāĻ•āĻ˛ā§āĻĒ⧇āϰ āϏāĻžāĻĨ⧇ āĻ¸ā§āĻĒāĻˇā§āϟāĻ­āĻžāĻŦ⧇ āύāĻŋāĻˇā§āĻ•ā§āϰāĻŋāϝāĻŧ āĻ•āϰāĻž āϝ⧇āϤ⧇ āĻĒāĻžāϰ⧇āĨ¤

  • āφāϰ⧋ āĻĻ⧇āϖ⧁āύ

$watch() ​

āĻĒāĻ°ā§āϝāĻŦ⧇āĻ•ā§āώāĻ• āϤ⧈āϰāĻŋāϰ āϜāĻ¨ā§āϝ āĻ…āĻĒāϰāĻŋāĻšāĻžāĻ°ā§āϝ APIāĨ¤

  • āϟāĻžāχāĻĒ

    ts
    interface ComponentPublicInstance {
      $watch(
        source: string | (() => any),
        callback: WatchCallback,
        options?: WatchOptions
      ): StopHandle
    }
    
    type WatchCallback<T> = (
      value: T,
      oldValue: T,
      onCleanup: (cleanupFn: () => void) => void
    ) => void
    
    interface WatchOptions {
      immediate?: boolean // default: false
      deep?: boolean // default: false
      flush?: 'pre' | 'post' | 'sync' // default: 'pre'
      onTrack?: (event: DebuggerEvent) => void
      onTrigger?: (event: DebuggerEvent) => void
    }
    
    type StopHandle = () => void
  • ** āĻŦāĻŋāĻ¸ā§āϤāĻžāϰāĻŋāϤ**

    āĻĒā§āϰāĻĨāĻŽ āϝ⧁āĻ•ā§āϤāĻŋ āĻšāϞ āĻ“ā§ŸāĻžāϚāϰ āĻ‰ā§ŽāϏāĨ¤ āĻāϟāĻŋ āĻāĻ•āϟāĻŋ āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āϟ āĻĒā§āϰāĻĒāĻžāĻ°ā§āϟāĻŋ āύāĻžāĻŽā§‡āϰ āĻ¸ā§āĻŸā§āϰāĻŋāĻ‚, āĻāĻ•āϟāĻŋ āϏāĻžāϧāĻžāϰāĻŖ āĻĄāϟ-āĻĄāĻŋāϞāĻŋāĻŽāĻŋāĻŸā§‡āĻĄ āĻĒāĻžāĻĨ āĻ¸ā§āĻŸā§āϰāĻŋāĻ‚ āĻŦāĻž āĻāĻ•āϟāĻŋ āϗ⧇āϟāĻžāϰ āĻĢāĻžāĻ‚āĻļāύāĨ¤

    āĻĻā§āĻŦāĻŋāϤ⧀āϝāĻŧ āϝ⧁āĻ•ā§āϤāĻŋ āĻšāϞ āĻ•āϞāĻŦā§āϝāĻžāĻ• āĻĢāĻžāĻ‚āĻļāύāĨ¤ āĻ•āϞāĻŦā§āϝāĻžāĻ• āύāϤ⧁āύ āĻŽāĻžāύ āĻāĻŦāĻ‚ āĻĒā§āϰ⧇āĻ•ā§āώāĻŋāϤ āĻ‰ā§ŽāϏ⧇āϰ āĻĒ⧁āϰāĻžāύ⧋ āĻŽāĻžāύ āĻ—ā§āϰāĻšāĻŖ āĻ•āϰ⧇āĨ¤

    • immediate: trigger the callback immediately on watcher creation. Old value will be undefined on the first call.
    • deep: force deep traversal of the source if it is an object, so that the callback fires on deep mutations. See Deep Watchers.
    • flush: adjust the callback's flush timing. See Callback Flush Timing and watchEffect().
    • onTrack / onTrigger: debug the watcher's dependencies. See Watcher Debugging.
  • Example

    Watch a property name:

    js
    this.$watch('a', (newVal, oldVal) => {})

    Watch a dot-delimited path:

    js
    this.$watch('a.b', (newVal, oldVal) => {})

    Using getter for more complex expressions:

    js
    this.$watch(
      // every time the expression `this.a + this.b` yields
      // a different result, the handler will be called.
      // It's as if we were watching a computed property
      // without defining the computed property itself.
      () => this.a + this.b,
      (newVal, oldVal) => {}
    )

    Stopping the watcher:

    js
    const unwatch = this.$watch('a', cb)
    
    // later...
    unwatch()
  • āφāϰ⧋ āĻĻ⧇āϖ⧁āύ

$emit() ​

āĻŦāĻ°ā§āϤāĻŽāĻžāύ āωāĻĻāĻžāĻšāϰāϪ⧇ āĻāĻ•āϟāĻŋ āĻ•āĻžāĻ¸ā§āϟāĻŽ āχāϭ⧇āĻ¨ā§āϟ āĻŸā§āϰāĻŋāĻ—āĻžāϰ āĻ•āϰ⧁āύāĨ¤ āϝ⧇āϕ⧋āύ āĻ…āϤāĻŋāϰāĻŋāĻ•ā§āϤ āφāĻ°ā§āϗ⧁āĻŽā§‡āĻ¨ā§āϟ āĻļā§āϰ⧋āϤāĻžāϰ āĻ•āϞāĻŦā§āϝāĻžāĻ• āĻĢāĻžāĻ‚āĻļāύ⧇ āĻĒāĻžāĻ āĻžāύ⧋ āĻšāĻŦ⧇āĨ¤

  • āϟāĻžāχāĻĒ

    ts
    interface ComponentPublicInstance {
      $emit(event: string, ...args: any[]): void
    }
  • Example

    js
    export default {
      created() {
        // only event
        this.$emit('foo')
        // with additional arguments
        this.$emit('bar', 1, 2, 3)
      }
    }
  • āφāϰ⧋ āĻĻ⧇āϖ⧁āύ

$forceUpdate() ​

Force the component instance to re-render.

  • āϟāĻžāχāĻĒ

    ts
    interface ComponentPublicInstance {
      $forceUpdate(): void
    }
  • ** āĻŦāĻŋāĻ¸ā§āϤāĻžāϰāĻŋāϤ**

    Vue-āĻāϰ āϏāĻŽā§āĻĒā§‚āĻ°ā§āĻŖ āĻ¸ā§āĻŦāϝāĻŧāĻ‚āĻ•ā§āϰāĻŋāϝāĻŧ āĻĒā§āϰāϤāĻŋāĻ•ā§āϰāĻŋāϝāĻŧāĻž āϏāĻŋāĻ¸ā§āĻŸā§‡āĻŽā§‡āϰ āĻ•āĻžāϰāϪ⧇ āĻāϟāĻŋ āϖ⧁āĻŦ āĻ•āĻŽāχ āĻĒā§āϰāϝāĻŧā§‹āϜāύāĨ¤ āφāĻĒāύāĻŋ āϝāĻ–āύ āωāĻ¨ā§āύāϤ āĻĒā§āϰāϤāĻŋāĻ•ā§āϰāĻŋāϝāĻŧāĻžāĻļā§€āϞ API āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇ āĻ¸ā§āĻĒāĻˇā§āϟāĻ­āĻžāĻŦ⧇ āĻ…-āĻĒā§āϰāϤāĻŋāĻ•ā§āϰāĻŋāϝāĻŧāĻžāĻļā§€āϞ āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āϟ āĻ…āĻŦāĻ¸ā§āĻĨāĻž āϤ⧈āϰāĻŋ āĻ•āϰ⧇āϛ⧇āύ āϤāĻ–āύāχ āφāĻĒāύāĻžāϰ āĻāϟāĻŋāϰ āĻĒā§āϰāϝāĻŧā§‹āϜāύ āĻšāϤ⧇ āĻĒāĻžāϰ⧇āĨ¤

$nextTick() ​

āĻ—ā§āϞ⧋āĻŦāĻžāϞ nextTick() āĻāϰ āχāύāĻ¸ā§āĻŸā§āϝāĻžāĻ¨ā§āϏ-āĻŦāĻžāωāĻ¨ā§āĻĄ āϏāĻ‚āĻ¸ā§āĻ•āϰāĻŖāĨ¤

  • āϟāĻžāχāĻĒ

    ts
    interface ComponentPublicInstance {
      $nextTick(callback?: (this: ComponentPublicInstance) => void): Promise<void>
    }
  • ** āĻŦāĻŋāĻ¸ā§āϤāĻžāϰāĻŋāϤ**

    nextTick() āĻāϰ āĻŦ⧈āĻļā§āĻŦāĻŋāĻ• āϏāĻ‚āĻ¸ā§āĻ•āϰāĻŖ āĻĨ⧇āϕ⧇ āĻāĻ•āĻŽāĻžāĻ¤ā§āϰ āĻĒāĻžāĻ°ā§āĻĨāĻ•ā§āϝ āĻšāϞ āϝ⧇ āĻ•āϞāĻŦā§āϝāĻžāĻ•āϟāĻŋ this.$nextTick()-āĻ āĻĒāĻžāϏ āĻ•āϰāĻž āĻšāϝāĻŧ⧇āϛ⧇ āϤāĻžāϰ this āĻĒā§āϰāϏāĻ™ā§āĻ— āĻŦāĻ°ā§āϤāĻŽāĻžāύ āĻ•āĻŽā§āĻĒā§‹āύ⧇āĻ¨ā§āϟ āωāĻĻāĻžāĻšāϰāϪ⧇āϰ āϏāĻžāĻĨ⧇ āφāĻŦāĻĻā§āϧ āĻĨāĻžāĻ•āĻŦ⧇āĨ¤

  • āφāϰ⧋ āĻĻ⧇āϖ⧁āύ nextTick()

Component Instance has loaded