Vue: ู„ุง ูŠุชู… ุญู‚ู† ุงู„ุฏุนุงุฆู… ุงู„ู…ู‚ุฏู…ุฉ ููŠ ุงู„ู…ูƒูˆู†ุงุช ุงู„ูˆุธูŠููŠุฉ

ุชู… ุฅู†ุดุงุคู‡ุง ุนู„ู‰ ูง ูŠูˆู†ูŠูˆ ูขู ูกูง  ยท  16ุชุนู„ูŠู‚ุงุช  ยท  ู…ุตุฏุฑ: vuejs/vue

ุงู„ุฅุตุฏุงุฑ

2.3.3

ุฑุงุจุท ุงู„ุงุณุชู†ุณุงุฎ

http://jsfiddle.net/p861bj9y/

ุฎุทูˆุงุช ุงู„ุชูƒุงุซุฑ

ู„ู‚ุฏ ุฎู„ู‚ุช ุงู„ุญุฏ ุงู„ุฃุฏู†ู‰ ู…ู† ุฅุนุงุฏุฉ ุฅู†ุชุงุฌ ุงู„ุณู„ูˆูƒ ุงู„ุฐูŠ ุฃุญุงูˆู„ ุงุฎุชุจุงุฑู‡ ุŒ ูˆุงู„ู…ุซุงู„ ูŠุญุชุงุฌ ูู‚ุท ุฅู„ู‰ ุนู…ู„ JSX.

ู…ุง ู‡ูˆ ู…ุชูˆู‚ุนุŸ

ูŠุฌุจ ุฃู† ุชุธู‡ุฑ ุงู„ุฎุตุงุฆุต ุงู„ุชูŠ ุชู†ุชู‚ู„ ู…ู† ุงู„ุฃุตู„ ููŠ ctx.injections .

ู…ุง ุงู„ุฐูŠ ูŠุญุฏุซ ุจุงู„ูุนู„ุŸ

Ctx.injections ู…ูˆุฌูˆุฏ ู„ูƒู†ู‡ ูŠุธู„ ูุงุฑุบู‹ุง. ู„ุง ูŠุชู… ุชู…ุฑูŠุฑ ุงู„ุฎุตุงุฆุต ุฅู„ู‰ ุณูŠุงู‚ ุงู„ู…ูƒูˆู† ุงู„ูˆุธูŠููŠ.

ุงู„ุชุนู„ูŠู‚ ุงู„ุฃูƒุซุฑ ูุงุฆุฏุฉ

ู‡ู„ ู‡ู†ุงูƒ ุฎุทุท ู„ู…ุนุงู„ุฌุฉ ู‡ุฐู‡ ุงู„ู…ุดูƒู„ุฉ ููŠ ุงู„ุฅุตุฏุงุฑ 3ุŸ

ุนู„ู‰ ุณุจูŠู„ ุงู„ู…ุซุงู„ ุŒ ุฃุญุงูˆู„ ุชุฌุฑูŠุฏ v-for away ุฅู„ู‰ ุฏุงู„ุฉ ุชุตูŠูŠุฑ ูˆู„ูƒู† ูŠู…ูƒู† ุฃู† ูŠูƒูˆู† ุฃุทูุงู„ูŠ ู…ูƒูˆู†ุงุช ูˆุธูŠููŠุฉ (ู„ุฐู„ูƒ ูŠุชู… ุชู‚ุฏูŠู…ู‡ุง ุจุงู„ูุนู„ ุนู†ุฏ ุงู„ุฏุฎูˆู„ ุฅู„ู‰ ูˆุธูŠูุฉ ุงู„ุนุฑุถ ูˆู„ุง ูŠู…ูƒู†ู†ูŠ ุงุณุชู†ุณุงุฎู‡ุง)

ุงู„ 16 ูƒูˆู…ูŠู†ุชุฑ

ู„ุฃู†ู‡ ุจุฏู„ุงู‹ ู…ู† parent ุŒ ูŠูุนุชุจุฑ child ุฃุทูุงู„ู‹ุง ู„ู€ vm (ุฑุจู…ุง ู…ุดูƒู„ุฉ). ู„ุฐู„ูƒ ู‚ุฏ ุชุญุชุงุฌ ุฅู„ู‰ ูƒุชุงุจุฉ provide ููŠ vm .

ุฑุงุฌุน ู„ู„ุดุบู„ ุŒ ูƒู…ุงู†ุชูƒ ุชุณุชุฎุฏู…

ุฎูˆุงุฑุฒู…ูŠุฉ ุงู„ุจุญุซ ุงู„ุฎุงุตุฉ ุจุงู„ุญู‚ู† ุงู„ู…ู‚ุฏู…ุฉ ู‡ูŠ ุฃู† ุงู„ุทูู„ ูŠู†ุธุฑ ุฅู„ู‰ ู†ูุณู‡ ุจุญุซู‹ุง ุนู† ุงู„ุณู…ุงุช ุงู„ู…ุชูˆูุฑุฉ ุซู… ูŠู‚ูˆู… ุจุญู„ู‚ุงุช ุงู„ุชุณู„ุณู„ ุงู„ู‡ุฑู…ูŠ $parent ุจุญุซู‹ุง ุนู† ุงู„ุฏุนุงุฆู… ุงู„ู…ู‚ุฏู…ุฉ ุญุชู‰ ูŠุตุจุญ ููŠ ุงู„ุฌุฐุฑ.
https://github.com/vuejs/vue/blob/b182ac40697edbe8253d4bd68b6ac09e93259e1c/src/core/instance/inject.js#L59 -L59

ุชุนุฐุฑ ุชุดุบูŠู„ ูƒู…ุงู†ูƒู… ุŒ ูˆู„ูƒู† ุนู†ุฏู…ุง ู‚ู…ุช ุจุชุดุบูŠู„ https://jsfiddle.net/Austio/vhgztp59/7/ ู‡ุฐุง ุงู„ูƒู…ุงู† ู„ู… ูŠุชู… ุชุนุฑูŠู ุงู„ูˆุงู„ุฏ $ ููŠ ุงู„ู…ูƒูˆู† ุงู„ูุฑุนูŠ ุนู†ุฏู…ุง ูˆุตู„ุช ุฅู„ู‰ ุณูŠุงู‚ ุงู„ุจุญุซ. ู‡ุฐู‡ ุนู„ู‰ ุงู„ุฃู‚ู„ ุจุฏุงูŠุฉ ุฅุฐุง ู„ู… ุชูƒู† ู‡ุฐู‡ ู…ุดูƒู„ุฉ ููŠ ุงู„ุชู‚ุฏูŠู… ููŠ ุงู„ุฎุงู†ุงุช ูˆู„ู… ุชูƒู† ู‡ู†ุงูƒ ุนู„ุงู‚ุฉ ุจูŠู† ุงู„ู…ูƒูˆู†ุงุช.

ูŠุจุฏูˆ ุฃู†ู‡ ูŠุชู… ุชู‚ุฏูŠู… ุงู„ู…ูƒูˆู† ุงู„ูˆุธูŠููŠ ู‚ุจู„ ุญู„ ุงู„ูุชุญุงุช

Kingwl ุตุญูŠุญ ุŒ ูˆู‡ุฐุง ู†ูˆุน ู…ู† ุงู„ู…ุชุทู„ุจุงุช ุงู„ูู†ูŠุฉ.

ุฃุชุฐูƒุฑ ุฃู†ู†ูŠ ุฃุซุฑุช ู‡ุฐู‡ ุงู„ู†ู‚ุทุฉ ู„ุฃู†ู†ูŠ ูƒู†ุช ู…ุฌู†ูˆู†ู‹ุง ุจู‡ุง. ููŠ ุงู„ู†ู‡ุงูŠุฉ ุŒ ุจุฏุง ุงู„ุฃู…ุฑ ุทุจูŠุนูŠู‹ุง ุจุงู„ู†ุณุจุฉ ู„ูŠ ู„ุฃู† ุงู„ู…ูƒูˆู†ุงุช ุงู„ูˆุธูŠููŠุฉ ู…ุฑุชุจุทุฉ ุจุงู„ู…ูƒูˆู† ุงู„ุฐูŠ ูŠุชู… ุชู‚ุฏูŠู…ู‡ ููŠู‡ ุŒ ูˆุจุงู„ุชุงู„ูŠ ุนู†ุฏ ุงุณุชุฎุฏุงู…ู‡ุง ููŠ ูุชุญุฉ ุŒ ูŠุชู… ุชูˆุตูŠู„ู‡ุง ุจุงู„ู…ูƒูˆู† ุงู„ุฎุงุฑุฌูŠ. ูˆู…ุน ุฐู„ูƒ ุŒ ู„ูŠุณ ู‡ุฐุง ู‡ูˆ ุงู„ุญุงู„ ู…ุน ุงู„ู…ูƒูˆู†ุงุช ุบูŠุฑ ุงู„ูˆุธูŠููŠุฉ:

ุชู‚ูˆู… ุงู„ุญุงูˆูŠุฉ ุจุญู‚ู† mode: 'foo' ูˆุนุฑุถู‡ุง <div><slot/></div>

<!-- rendered in App -->
<container>
   <!-- parent is App, mode is undefined -->
  <functional></functional>
</container>

<container>
   <!-- parent is container, mode is foo -->
  <not-functional></not-functional>
</container>

http://jsfiddle.net/p861bj9y/

ุชุญุฑูŠุฑ: alidcastano ู„ู‚ุฏ ู‚ู…ุช ุจุชุญุฏูŠุซ ุงู„ูƒู…ุงู† ููŠ ุชุนู„ูŠู‚ูƒ ู„ุฃู† ุชุนู„ูŠู‚ูƒ ู„ู… ูŠูƒู† ูŠุณุชุฎุฏู… Vue 2

ู‡ุงู‡ุง ุขุณู ู„ุงุณุชุฎุฏุงู… ุฅุตุฏุงุฑ Vue ุงู„ุฎุงุทุฆ ููŠ ุงู„ูƒู…ุงู† ุŒ ู„ู‚ุฏ ูƒู†ุช ู…ู†ุฏู‡ุดู‹ุง ุฌุฏู‹ุง ู„ุนุฏู… ุชู…ูƒู†ูŠ ู…ู† ุชูƒูˆูŠู† JSX ุงู„ุฐูŠ ู„ู… ุฃุฏุฑูƒู‡. posva ุดูƒุฑุง

-

ู„ุฐุง ูุฅู† ุงู„ู…ุดูƒู„ุฉ ู‡ู†ุง ู„ูŠุณุช ุฃู† ุงู„ู…ูƒูˆู† ุงู„ูˆุธูŠููŠ ู„ุง ูŠู…ูƒู†ู‡ ุชู„ู‚ูŠ ุงู„ุฎุตุงุฆุต ุงู„ู…ุชูˆูุฑุฉ ุŒ ูุงู„ู…ุณุฃู„ุฉ ู‡ูŠ ุฃู† ุงู„ู…ูƒูˆู† ุงู„ูˆุธูŠููŠ ูŠุชู… ุชู‚ุฏูŠู…ู‡ ู‚ุจู„ ุงู„ูุชุญุฉุŸ

LinusBorg ุจูˆุงุณุทุฉ "ุงู„ู…ุชุทู„ุจุงุช ุงู„ูู†ูŠุฉ" ู‡ู„ ู‡ุฐุง ูŠุนู†ูŠ ุฃู†ู‡ ู„ุง ูŠูˆุฌุฏ ุญู„ ุจุฏูŠู„ ุฃูˆ ุฃู† ุงู„ุณู„ูˆูƒ ู…ู‚ุตูˆุฏุŸ

ู‡ู„ ูŠุฌุจ ุฅู†ุดุงุก ุญุงูˆูŠุฉ ู„ุชูƒูˆู† ุจู…ุซุงุจุฉ vm ุงู„ุฐูŠ ูŠู…ุฑุฑ ุงู„ุฏุนุงุฆู…ุŸ ุนู„ู‰ ุณุจูŠู„ ุงู„ู…ุซุงู„ ุŒ ู‚ุฏ ูŠุชุบูŠุฑ ุงู„ุชุตู…ูŠู… ุฅู„ู‰ ู‡ุฐุง:

// before
<parent-component>
  <child-component />
</parent-component>

// after
<vm-container>
   <parent-component>
     <child-component />
   </parent-component>
<vm-container>

ู„ูƒู† ุงู„ู…ุซุงู„ ุฃุนู„ุงู‡ ูŠุจุฏูˆ ู…ู†ุชูุฎู‹ุง ุจู„ุง ุฏุงุนู ู„ุฃู† ุฌูˆู‡ุฑ ุงู„ู…ูƒูˆู† ุงู„ุฑุฆูŠุณูŠ ูŠุณุชู„ุฒู… ุจุงู„ูุนู„ ุฌู…ูŠุน ุงู„ุจูŠุงู†ุงุช ุงู„ุชูŠ ูŠุญุชุงุฌู‡ุง ู„ุชุฒูˆูŠุฏ ุงู„ุทูู„. ู„ูƒู†ูŠ ู…ู†ูุชุญ ุนู„ู‰ ุงู„ู…ู†ุงู‚ุดุฉ. ู‡ู„ ู‡ุฐุง ู…ุง ุชู‚ุชุฑุญูˆู†ู‡ ูŠุง ุฑูุงู‚ุŸ

ู„ู† ูŠุบูŠุฑ vm-container ุฃูŠ ุดูŠุก ู„ุฃู† ุงู„ูุชุญุฉ ูŠุชู… ุนุฑุถู‡ุง ููŠ ุณูŠุงู‚ app

ุจูˆุงุณุทุฉ "ุงู„ู…ุชุทู„ุจุงุช ุงู„ูู†ูŠุฉ" ู‡ู„ ู‡ุฐุง ูŠุนู†ูŠ ุฃู†ู‡ ู„ุง ูŠูˆุฌุฏ ุญู„ ุจุฏูŠู„ ุฃูˆ ุฃู† ุงู„ุณู„ูˆูƒ ู…ู‚ุตูˆุฏุŸ

ุงู„ุณู„ูˆูƒ ู‡ูˆ ู†ุชูŠุฌุฉ ุงู„ุทุฑูŠู‚ุฉ ุงู„ุชูŠ ุชุนู…ู„ ุจู‡ุง ุงู„ู…ูƒูˆู†ุงุช ุงู„ูˆุธูŠููŠุฉ. ุถุน ููŠ ุงุนุชุจุงุฑูƒ ู‡ุฐู‡ ุงู„ู…ุฌู…ูˆุนุฉ ู…ู† ุงู„ู…ูƒูˆู†ุงุช:

<!-- template of a `parent` component -->
<template>
  <Child>
    <functional />
  </Child>
</template>

ุนู†ุฏู…ุง ุชู…ุฑุฑ ู…ูƒูˆู†ู‹ุง ูˆุธูŠููŠู‹ุง ุฅู„ู‰ ูุชุญุฉ ู…ูƒูˆู† ุขุฎุฑ ุŒ ูŠุฌุจ ุชู‚ุฏูŠู…ู‡ ู‚ุจู„ ุฃู† ูŠุชู… ุชู…ุฑูŠุฑู‡ ุฅู„ู‰ ุงู„ุทูู„ ุŒ ุจุญูŠุซ ูŠู…ูƒู† ู„ู‡ุฐุง ุงู„ู…ูƒูˆู† ุงู„ูุฑุนูŠ ุชู„ู‚ูŠ vNodes ุงู„ู†ุงุชุฌ ูƒู…ุญุชูˆู‰ ุงู„ูุชุญุฉ. (*)

ููŠ ุณูŠุงู‚ ุงู„ู…ุซุงู„ ุฃุนู„ุงู‡ ุŒ ู‡ุฐุง ูŠุนู†ูŠ ุฃู†ู‡ ููŠ ุงู„ูˆู‚ุช ุงู„ุญุงู„ูŠ ุงู„ุฐูŠ ูŠุชู… ููŠู‡ ุนุฑุถ ุงู„ู…ูƒูˆู† <functional> ุŒ ูŠูƒูˆู† ุงู„ุฃุตู„ ุงู„ู…ุชุงุญ ู‡ูˆ ุงู„ู…ูƒูˆู† ุงู„ุฎุงุฑุฌูŠ ( <parent> ) ุŒ ูˆู„ูŠุณ <child> .

ูˆุจุงู„ุชุงู„ูŠ ุŒ ูุฅู† ุงู„ุญู‚ู† ุงู„ูˆุญูŠุฏุฉ ุงู„ู…ุชุงุญุฉ ู„ู„ู…ูƒูˆู† ุงู„ูˆุธูŠููŠ ู‡ูŠ ุชู„ูƒ ุงู„ู…ุชูˆูุฑุฉ ููŠ <parent> ุฃูŠุถู‹ุง.


(*): ู‡ุฐู‡ ู‡ูŠ ุงู„ุทุฑูŠู‚ุฉ ุงู„ุชูŠ ูŠุนู…ู„ ุจู‡ุง ุงู„ุชุทุจูŠู‚ ุงู„ุญุงู„ูŠ ู„ู„ู†ุทุงู‚ ุงู„ุธุงู‡ุฑูŠ ู…ุน ุงู„ู…ูƒูˆู†ุงุช ุงู„ูˆุธูŠููŠุฉ. ู„ุชุบูŠูŠุฑ ุฐู„ูƒ ูŠุชุทู„ุจ ุชุบูŠูŠุฑ ุงู„ูƒุซูŠุฑ ู…ู† ุงู„ู…ูŠูƒุงู†ูŠูƒุง ุงู„ุฏุงุฎู„ูŠุฉ.

posvaLinusBorg ูู‡ู…ุช ุฐู„ูƒ ุŒ ุดูƒุฑู‹ุง ู„ู„ุชูˆุถูŠุญ .

ู„ุฐู„ูƒ ุŒ ู†ุธุฑู‹ุง ู„ู‡ุฐู‡ ุงู„ู…ุชุทู„ุจุงุช ุŒ ูุฅู† ุงู„ุทุฑูŠู‚ุฉ ุงู„ูˆุญูŠุฏุฉ ู„ุงุณุชุฎุฏุงู… ุงู„ุชุฒูˆูŠุฏ / ุงู„ุญู‚ู† ุจุงู„ู…ูƒูˆู†ุงุช ุงู„ูˆุธูŠููŠุฉ ู‡ูŠ ุชูˆููŠุฑ ุงู„ุฏุนุงุฆู… ููŠ ุณูŠุงู‚ app .

ุฃู†ุง ู…ุชุฃูƒุฏ ู…ู† ุฃู† ู‡ุฐุง ุงู„ู‚ูŠุฏ ุณูŠุชู… ุชูˆุถูŠุญู‡ ููŠ ุงู„ูˆุซุงุฆู‚. ูŠุฑุฌู‰ ุงู„ู…ุถูŠ ู‚ุฏู…ู‹ุง ูˆุฅุบู„ุงู‚ ู‡ุฐู‡ ุงู„ู…ุดูƒู„ุฉ ุฅุฐุง ู„ู… ูŠูƒู† ู‡ู†ุงูƒ ุฃูŠ ุดูŠุก ุขุฎุฑ ูŠู„ุฒู… ุงู„ู‚ูŠุงู… ุจู‡ ุฃูˆ ุชูˆุถูŠุญู‡ ุ› ุดูƒุฑุง ู„ูƒ ู…ุฑุฉ ุฃุฎุฑู‰!

ุฑุจู…ุง ูŠู…ูƒู†ู†ุง ุฅูŠุฌุงุฏ ุทุฑูŠู‚ุฉ ู„ุชุญุณูŠู† ุงู„ู…ูƒูˆู† ุงู„ูˆุธูŠููŠ ููŠ ุงู„ูุชุญุฉ
ูˆู„ูƒู† ููŠ ุงู„ูˆู‚ุช ุงู„ุญุงู„ูŠ ุŒ ูŠุฌุจ ุฃู† ูŠุชู… ุฐู„ูƒ ู…ุซู„ posva ูˆ LinusBorg

Kingwl ุดูƒุฑุง ู„ุฅุจู‚ุงุก ู‡ุฐุง ู…ูุชูˆุญุง.

ุฃุฎูŠุฑู‹ุง ูƒุงู† ู„ุฏูŠ ุจุนุถ ุงู„ูˆู‚ุช ู„ู…ุญุงูˆู„ุฉ ุฏู…ุฌ ู‡ุฐุง ููŠ ุงู„ู…ูƒูˆู† ุงู„ุฅุถุงููŠ ู…ุญุฑุฑ vue-mobiledoc ุจุงุณุชุฎุฏุงู… ุงู„ู†ุตุงุฆุญ ุงู„ู…ุฐูƒูˆุฑุฉ ุฃุนู„ุงู‡. ุฅุญุฏู‰ ุงู„ู…ุดูƒู„ุงุช ุงู„ุชูŠ ุฃุชูˆู‚ุนู‡ุง ุฅุฐุง ูƒุงู† ุงู„ู…ูƒูˆู† ุจุญุงุฌุฉ ุฅู„ู‰ ุงุณุชุฎุฏุงู… ู…ู† ู…ุซูŠู„ app ู‡ูˆ ุฃู†ู‡ ู…ู† ุงู„ุตุนุจ ุงู„ุณู…ุงุญ ุจุงู„ู…ุฑูˆู†ุฉ ู…ุน ุงู„ู…ูƒูˆู†ุงุช ุงู„ู…ุชุฏุงุฎู„ุฉ ุงู„ู…ุณุชุฎุฏู…ุฉ.

ุนู„ู‰ ุณุจูŠู„ ุงู„ู…ุซุงู„ ุŒ ู„ุง ุจุฏ ู„ูŠ ู…ู† ุชุตุฏูŠุฑ ุงู„ู…ูƒูˆู†ุงุช ุงู„ู…ุณุฌู„ุฉ ุจุงู„ูุนู„ ุถู…ู† ู…ุซูŠู„ ุงู„ุชุทุจูŠู‚:

...

export default Vue.extend({
  render (h) {
    return (
      <div>
        <ParentComp>
          <ChildFuncComp/>
        </ParentComp>
      </div>
    )
  },

  provide () { // data that needs to be injected into functional components 
    return {
       msg: 'hello'
    }
  },

  components: {
    ParentComp,
    ChildFuncComp
  }
})

ุซู… ุญุณุจ ูู‡ู…ูŠ ุŒ ุนู†ุฏู…ุง ูŠุณุชุฎุฏู… ุงู„ู…ุณุชุฎุฏู… ุงู„ู…ูƒูˆู† ุงู„ุฅุถุงููŠ ุŒ ุณูŠูƒูˆู† ุงู„ุฃู…ุฑ ูƒู…ุง ูŠู„ูŠ:

// template
<div id="app">
   <div id="#someWhereInApp" />
</div>

// script 
import SuperCoolComponent from 'SuperCoolComponent' 

export default {
   mounted () {
    this.$once('mounted', () => new SuperCoolComponent().$mount('#someWhereInApp'))
    this.$emit('mounted')
  }
}

ุฅุฐุง ูƒุงู† ุชุทุจูŠู‚ูŠ ุตุญูŠุญู‹ุง ุŒ ูู‡ุฐุง ูŠุญุฏ ุจุดุฏุฉ ู…ู† ุงุณุชุฎุฏุงู… ุงู„ุชุฒูˆูŠุฏ / ุงู„ุญู‚ู† ุจุงู„ู…ูƒูˆู†ุงุช ุงู„ูˆุธูŠููŠุฉ ุญูŠุซ ู„ุง ูŠูุณู…ุญ ู„ูƒ ุจุงุณุชูŠุฑุงุฏ ุงู„ู…ูƒูˆู†ุงุช ุงู„ุชูŠ ุชุฑุบุจ ููŠ ุงุณุชุฎุฏุงู…ู‡ุง ูˆุชุณุฌูŠู„ู‡ุง ุจุดูƒู„ ูุฑุฏูŠ.

ุณุฃุณุชุฎุฏู… ุงู„ู…ูƒูˆู†ุงุช ุงู„ูƒุงู…ู„ุฉ ุจุฏู„ุงู‹ ู…ู† ุฐู„ูƒ ู„ุฏุนู… ุงู„ุชู‚ุฏูŠู… / ุงู„ุญู‚ู†

ุฃุญุงูˆู„ ุญู„ ู‡ุฐุง
ุฑุจู…ุง ุชูƒูˆู† ุนู…ู„ูŠุฉ ุทูˆูŠู„ุฉุŸ

Kingwl ู‡ู„ ูƒู†ุช ู‚ุงุฏุฑู‹ุง ุนู„ู‰ ุญู„ู‡ุงุŸ

ู‡ู„ ู‡ู†ุงูƒ ุฎุทุท ู„ู…ุนุงู„ุฌุฉ ู‡ุฐู‡ ุงู„ู…ุดูƒู„ุฉ ููŠ ุงู„ุฅุตุฏุงุฑ 3ุŸ

ุนู„ู‰ ุณุจูŠู„ ุงู„ู…ุซุงู„ ุŒ ุฃุญุงูˆู„ ุชุฌุฑูŠุฏ v-for away ุฅู„ู‰ ุฏุงู„ุฉ ุชุตูŠูŠุฑ ูˆู„ูƒู† ูŠู…ูƒู† ุฃู† ูŠูƒูˆู† ุฃุทูุงู„ูŠ ู…ูƒูˆู†ุงุช ูˆุธูŠููŠุฉ (ู„ุฐู„ูƒ ูŠุชู… ุชู‚ุฏูŠู…ู‡ุง ุจุงู„ูุนู„ ุนู†ุฏ ุงู„ุฏุฎูˆู„ ุฅู„ู‰ ูˆุธูŠูุฉ ุงู„ุนุฑุถ ูˆู„ุง ูŠู…ูƒู†ู†ูŠ ุงุณุชู†ุณุงุฎู‡ุง)

ุฃูŠ ุชุญุฏูŠุซุŸ

ู‡ู„ ูƒุงู†ุช ู‡ุฐู‡ ุงู„ุตูุญุฉ ู…ููŠุฏุฉุŸ
0 / 5 - 0 ุงู„ุชู‚ูŠูŠู…ุงุช