2.6.10
https://jsfiddle.net/bponomarenko/uom10qd2/
ΠΠΈΡΠ΅ΠΊΡΠΈΠ²Π° Π±ΡΠ΄Π΅Ρ Π²ΡΠ΄Π°Π²Π°ΡΡ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΠ΅ ΠΊΠΎΠ½ΡΠΎΠ»ΡΠ½ΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΏΡΠΈ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠΈ ΠΊ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΠΌ DOM ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°ΠΌ (ΠΏΡΠΈ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΈ ΠΏΠΎΡΠ»Π΅ Π½Π°ΠΆΠ°ΡΠΈΡ ΠΊΠ½ΠΎΠΏΠΊΠΈ).
Π― Π½Π΅ ΡΠ²Π΅ΡΠ΅Π½, ΠΊΠ°ΠΊΠΎΠ³ΠΎ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ° ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΎΠΆΠΈΠ΄Π°ΡΡ. ΠΠ»ΠΈ
bind: first comp
bind: first elem
unbind: first comp
unbind: first elem
bind: first comp
bind: first elem
ΠΈΠ»ΠΈ ΠΆΠ΅
bind: first comp
bind: first elem
unbind: second comp
unbind: second elem
bind: first comp
bind: first elem
Π‘ΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΈΠ· Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ ΡΠ°ΠΊΠΈΠ΅ ΠΆΠ΅ ΠΏΡΠΈ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ, Π½ΠΎ Π΄ΡΡΠ³ΠΈΠ΅ ΠΏΠΎΡΠ»Π΅ Π½Π°ΠΆΠ°ΡΠΈΡ ΠΊΠ½ΠΎΠΏΠΊΠΈ.
Π€Π°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠΉ Π²ΡΠ²ΠΎΠ΄ ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ:
bind: first comp
bind: first elem
unbind: first comp
unbind: second elem
bind: second comp
bind: first elem
ΠΠ°ΠΆΠ΅ΡΡΡ, ΡΡΠΎ ΠΏΠΎΡΡΠ΄ΠΎΠΊ, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Ρ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ ΠΊ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΠΌ ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°ΠΌ DOM, ΡΠ°Π·Π»ΠΈΡΠ΅Π½. Π ΠΌΠΎΠ΅ΠΉ Π½Π°ΡΡΡΠΎΠΉΠΊΠ΅ Ρ ΠΌΠ΅Π½Ρ Π΅ΡΡΡ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°Π΅ΠΌΠ°Ρ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Π°, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎΠ»Π°Π³Π°Π΅ΡΡΡ Π½Π° Π½Π΅ΠΊΠΎΡΠΎΡΡΠΉ Π°ΡΡΠΈΠ±ΡΡ DOM Ρ Π΄Π°Π½Π½ΡΠΌΠΈ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ. ΠΠΎΠ³Π΄Π° ΡΡΠ° Π½Π°ΡΡΡΠ°ΠΈΠ²Π°Π΅ΠΌΠ°Ρ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Π° ΠΏΡΠΈΠ²ΡΠ·ΡΠ²Π°Π΅ΡΡΡ / ΠΎΡΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² Β«ΠΎΠ±ΡΡΠ½ΠΎΠΌ ΠΏΠΎΡΠΎΠΊΠ΅Β» - Π²ΡΠ΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ, ΠΊΠ°ΠΊ ΠΎΠΆΠΈΠ΄Π°Π»ΠΎΡΡ (Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Π° ΠΏΡΠΈΠ²ΡΠ·ΡΠ²Π°Π΅ΡΡΡ ΠΏΠΎΡΠ»Π΅ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ Π°ΡΡΠΈΠ±ΡΡΠΎΠ² ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°). ΠΠ΄Π½Π°ΠΊΠΎ, ΠΊΠΎΠ³Π΄Π° Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Π° ΠΏΡΠΈΠ²ΡΠ·Π°Π½Π° / Π½Π΅ ΠΏΡΠΈΠ²ΡΠ·Π°Π½Π° Π² ΡΠ»ΡΡΠ°Π΅ Vue Β«ΡΡΡΠ°ΡΠ΅Π³ΠΈΡ ΠΈΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π½Π° ΠΌΠ΅ΡΡΠ΅Β», ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΊΠ°ΠΆΠ΅ΡΡΡ Π΄ΡΡΠ³ΠΈΠΌ.
ΠΠΎΡ ΠΎΠΆΠ΅, ΡΡΠΎ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Π° Π²ΡΠ·ΡΠ²Π°Π΅ΡΡΡ ΡΠΎ ΡΡΠ°ΡΡΠΌ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠΌ (ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΎΠ½ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎ), Π½ΠΎ Ρ Π½Π΅Π΅ Π²ΡΠ΅ Π΅ΡΠ΅ Π΅ΡΡΡ ΡΡΠ°ΡΡΠ΅ Π°ΡΡΠΈΠ±ΡΡΡ
Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΎΠ±Ρ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡΡΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ ΠΊΠ»ΡΡ Π½Π° ΠΎΠ΄Π½ΠΎΠΌ ΠΈΠ· ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ²
@bponomarenko
Π’ΠΎ, ΡΡΠΎ ΡΠΊΠ°Π·Π°Π» ΠΎΠΏΠΈΡΠ°Π½ΠΎ Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ.
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΎΡΠ»Π°ΡΡΡΡ Π½Π° ΡΡΠΎ.
https://vuejs.org/v2/guide/conditional.html#Controlling -Reusable-Elements-with-key
@posva @pistis Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ Π·Π° ΠΎΡΠ²Π΅Ρ. ΠΠ°, ΡΡΠΎ ΡΠΎ, ΡΡΠΎ ΠΌΡ Π² ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠΌ ΠΈΡΠΎΠ³Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΎΠ±Ρ
ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡΡΠΈ, Ρ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΠ» ΡΠΏΠΎΠΌΡΠ½ΡΡΡ ΠΎΠ± ΡΡΠΎΠΌ Π² Π·Π°ΡΠ²ΠΊΠ΅. ΠΠ΄Π½Π°ΠΊΠΎ Π½Π°Π»ΠΈΡΠΈΠ΅ Π°ΡΡΠΈΠ±ΡΡΠ° key
Π½Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ ΡΠ΅Π½Π΄Π΅ΡΠΈΠ½Π³Π° Vue.js. ΠΡΠ»ΠΎ Π±Ρ Π·Π΄ΠΎΡΠΎΠ²ΠΎ ΠΈΡΠΏΡΠ°Π²ΠΈΡΡ ΡΡΠΎ.
ΠΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ ΠΎΡΠ½ΠΎΠ²Π°Π½Π° Π½Π° ΡΠΎΠΌ, ΡΡΠΎ Ρ Π²Π°Ρ Π΅ΡΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ Π±Π΅Π· ΡΠΎΡΡΠΎΡΠ½ΠΈΡ, ΠΏΠΎΡΡΠΎΠΌΡ Vue Π½Π΅ Π±ΡΠ΄Π΅Ρ Π·Π°Π±ΠΎΡΠΈΡΡΡΡ ΠΎ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠΌ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌΠΈ ΡΠΎΠ±ΡΡΠΈΠΉ ΠΈΠ»ΠΈ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΌΠΈ ΡΠΎΡΡΠΎΡΠ½ΠΈΡΠΌΠΈ ΠΏΡΠΈ ΠΏΠΎΠΏΡΡΠΊΠ΅ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ»Π΅ΠΌΠ΅Π½Ρ. Π’Π°ΠΊ ΡΡΠΎ Ρ Π΄ΡΠΌΠ°Ρ, ΡΡΠΎ ΡΡΠΎ Π½Π΅ ΠΎΡΠΈΠ±ΠΊΠ°, Π½ΠΎ ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»ΡΠ½ΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠ»ΡΡΡΠ΅Π½ΠΎ Π² Π½Π°ΡΠΈΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°Ρ , ΡΡΠΎΠ±Ρ Π½Π°ΡΠΈΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ Π±ΡΠ»ΠΎ Π»Π΅Π³ΡΠ΅ ΠΏΠΎΠ½ΡΡΡ ΡΡΠΎ.
@Justineo Π― ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΠΈ ΡΠ°ΠΌΠΎΠΉ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ. Π ΠΌΠΎΠ΅ΠΉ ΡΠΈΡΡΠ°ΡΠΈΠΈ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°Π΅ΠΌΠ°Ρ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Π° ΠΎΡΠ²Π΅ΡΠ°Π΅Ρ Π·Π° Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π°ΡΡΠΈΠ±ΡΡΠ° ΡΠΎΡΡΠΎΡΠ½ΠΈΡ ΠΊ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ Π² bind
ΠΈ ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΡΡΠΎΠ³ΠΎ Π°ΡΡΠΈΠ±ΡΡΠ° Π² unbind
. Π Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Π° ΠΎΡΠ»ΠΈΡΠ½ΠΎ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΡΡΡ / ΡΠ΄Π°Π»ΡΠ΅ΡΡΡ, ΠΊΠΎΠ³Π΄Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Vue.js. ΠΠ΄Π½Π°ΠΊΠΎ ΠΏΠΎΡΡΠ΄ΠΎΠΊ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΡΠ²ΠΎΠΉΡΡΠ² ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² ΠΈ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ² ΡΠ°Π·Π»ΠΈΡΠ°Π΅ΡΡΡ Π² ΡΠ°Π·Π½ΡΠ΅ ΠΌΠΎΠΌΠ΅Π½ΡΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΆΠΈΠ·Π½ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°, ΡΡΠΎ Π·Π°ΡΡΡΠ΄Π½ΡΠ΅Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΡ
Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ².
ΠΠ΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ, Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½Π°Ρ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΏΠΎ ΡΡΠΈΠΌ ΠΌΠ΅ΡΠΎΠ΄Π°ΠΌ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΠΎΠ»Π΅Π·Π½Π°, Π½ΠΎ, Π½Π° ΠΌΠΎΠΉ Π²Π·Π³Π»ΡΠ΄, Π½Π΅ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΡΠ΅ ΡΠΎΠ±ΡΡΠΈΡ ΠΆΠΈΠ·Π½Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠΈΠΊΠ»Π° Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ² - ΡΡΠΎ ΡΠΊΠΎΡΠ΅Π΅ ΠΎΡΠΈΠ±ΠΊΠ°, ΠΊΠΎΡΠΎΡΡΡ Π½ΡΠΆΠ½ΠΎ ΠΈΡΠΏΡΠ°Π²ΠΈΡΡ.
Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΎΠ±Ρ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡΡΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ ΠΊΠ»ΡΡ Π½Π° ΠΎΠ΄Π½ΠΎΠΌ ΠΈΠ· ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ²
Π‘Π°ΠΌΡΠΉ ΠΏΠΎΠ»Π΅Π·Π½ΡΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ
ΠΠΎΡ ΠΎΠΆΠ΅, ΡΡΠΎ Π΄ΠΈΡΠ΅ΠΊΡΠΈΠ²Π° Π²ΡΠ·ΡΠ²Π°Π΅ΡΡΡ ΡΠΎ ΡΡΠ°ΡΡΠΌ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠΌ (ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΎΠ½ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎ), Π½ΠΎ Ρ Π½Π΅Π΅ Π²ΡΠ΅ Π΅ΡΠ΅ Π΅ΡΡΡ ΡΡΠ°ΡΡΠ΅ Π°ΡΡΠΈΠ±ΡΡΡ
Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΎΠ±Ρ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΡΡΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ ΠΊΠ»ΡΡ Π½Π° ΠΎΠ΄Π½ΠΎΠΌ ΠΈΠ· ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ²