Vue: [рд╕реБрдЭрд╛рд╡] Vue 2.0 - vm.$appendTo - рд╕рд┐рдВрдЧрд▓рдЯрди рдШрдЯрдХ

рдХреЛ рдирд┐рд░реНрдорд┐рдд 29 рдЕрдкреНрд░реИрд▓ 2016  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: vuejs/vue

рдореЗрд░реЗ рд╡рд░реНрддрдорд╛рди рд╕рд┐рдВрдЧрд▓рдЯрди рдкреИрдЯрд░реНрди рдХреЗ рд▓рд┐рдП рд╣реИ Vue.extend рдШрдЯрдХ рдФрд░ рдХреЙрд▓ $appendTo(body) рдкрд░ compile рдкрд░ рдкрд╣рд▓реЗ require рдФрд░ рд╡рд╛рдкрд╕реА vm рд╕рднреА рджреВрд╕рд░реЛрдВ рдкрд░ .

рдЬрдм vm.$appendTo рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, рддреЛ рдореБрдЭреЗ рд╕рд┐рдВрдЧрд▓рдЯрди рдШрдЯрдХреЛрдВ рдХреЛ рдмрдирд╛рдиреЗ рдХрд╛ рдПрдХ рдФрд░ рддрд░реАрдХрд╛ рдЪрд╛рд╣рд┐рдПред
рд╢рд╛рдпрдж рдХреБрдЫ рдРрд╕рд╛:

replace: false
el: => document.body

Vue-comps рдореЗрдВ рдореЗрд░реЗ рдкрд╛рд╕ рд╡рд░реНрддрдорд╛рди рдореЗрдВ 3 рд╕рд┐рдВрдЧрд▓рдЯрди рдШрдЯрдХ рд╣реИрдВ:

  • vue-comps-waves - рдореЗрдВ рдПрдХ рдЫрд┐рдкрд╛ рд╣реБрдЖ рд╕рд┐рдВрдЧрд▓рдЯрди svg рд╕реНрдЯреЛрд░ рд╣реИ рдЬреЛ svg рдПрдирд┐рдореЗрд╢рди рдХреЗ рд╕рд╛рде рд╕рднреА waves рдЗрдВрд╕реНрдЯреЗрдВрд╕ рдкрд░реЛрд╕рддрд╛ рд╣реИ
  • vue-toster - рдПрдХ рд╣реА рдЙрджрд╛рд╣рд░рдг рдХреЛ рдЙрди рд╕рднреА рдШрдЯрдХреЛрдВ рджреНрд╡рд╛рд░рд╛ рд╕рд╛рдЭрд╛ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдЬреЛ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ
  • vue-overlay - рдкреГрд╖реНрдарднреВрдорд┐ рдХреЛ рдХрд╛рд▓рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдПрдХрд▓ рдУрд╡рд░рд▓реЗ рдЬреЛ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд╕рднреА рдШрдЯрдХреЛрдВ рдХреЗ z-index рдХрд╛ рдЯреНрд░реИрдХ рд░рдЦрддрд╛ рд╣реИ

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдЖрдкрдХреЛ рдЗрд╕реЗ рдЬреЛрдбрд╝рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ $mount() рдмрд┐рдирд╛ рддрд░реНрдХреЛрдВ рдХреЗ (рдЬреЛ vm.$el рдмрдирд╛рддрд╛ рд╣реИ) рдХреЙрд▓ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЕрдиреНрдпрдерд╛ рд╣рд╛рдБ рдЗрд╕реЗ рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

рд╕рднреА 3 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдореИрдВ рдпрд╣рд╛рдВ $appendTo() рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЛ рдмрд┐рд▓реНрдХреБрд▓ рдирд╣реАрдВ рд╕рдордЭрддрд╛ - рдЖрдк рдХреЗрд╡рд▓ this.$el рдкрд░ рдореВрд▓ DOM рд╡рд┐рдзрд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдХреНрдпрд╛ рдЕрдВрддрд░ рд╣реИ?

рд╢рд╛рдпрдж рдореИрдВ рдмрд╕ рдЙрд▓рдЭрди рдореЗрдВ рд╣реВрдБ

рд╕рдВрд▓рдЧреНрди рдмрд╣рд┐рд╖реНрдХреГрдд, рдШрдЯрдХреЛрдВ рдХреЗ рдЕрдм рдСрдл-рдбреЛрдо рд╣реЛрдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдирд╣реАрдВ рд╣реИ

рдпрд╣ рдХрд╛рдо рдХрд░реЗрдЧрд╛?

Comp = Vue.extend(someComp)
vm = new Comp() # vm is off-dom here ?
document.body.appendChild(vm.$el)

рдЕрдЧрд░ рдРрд╕рд╛ рд╣реИ рддреЛ рдЗрд╕реЗ рдмрдВрдж рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ..

рдЖрдкрдХреЛ рдЗрд╕реЗ рдЬреЛрдбрд╝рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ $mount() рдмрд┐рдирд╛ рддрд░реНрдХреЛрдВ рдХреЗ (рдЬреЛ vm.$el рдмрдирд╛рддрд╛ рд╣реИ) рдХреЙрд▓ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЕрдиреНрдпрдерд╛ рд╣рд╛рдБ рдЗрд╕реЗ рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

fergaldoyle picture fergaldoyle  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

loki0609 picture loki0609  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

seemsindie picture seemsindie  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

lmnsg picture lmnsg  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

aviggngyv picture aviggngyv  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ