Vue: рдмрдЪреНрдЪреЛрдВ рдХреЛ рдорд╛рддрд╛-рдкрд┐рддрд╛ рдХреЗ рд▓рд┐рдП рдкрдВрдЬреАрдХреГрдд рдШрдЯрдХреЛрдВ рдХреЛ "рд╡рд┐рд░рд╛рд╕рдд" рдХрд░рдиреЗ рджреЗрдВред

рдХреЛ рдирд┐рд░реНрдорд┐рдд 10 рд╕рд┐рддре░ 2015  ┬╖  36рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: vuejs/vue

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреЛ рдЬрд╛рдирдмреВрдЭрдХрд░ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рд▓реЗрдХрд┐рди рдХреБрдЫ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдпрд╣ рдмрд╣реБрдд рдЙрдкрдпреЛрдЧреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдХреНрдпреЛрдВ рди рдЗрд╕ рдЪреАрдЬрд╝ рдХреЛ рд╡рд╛рдкрд╕ рд░рдЦрд╛ рдЬрд╛рдП рд╢рд╛рдпрдж рдЗрд╕реЗ рд╡реИрдХрд▓реНрдкрд┐рдХ рдмрдирд╛ рджрд┐рдпрд╛ рдЬрд╛рдП?

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

рдЙрдиреНрд╣реЗрдВ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдЖрдпрд╛рдд рдХрд░рдирд╛ рдПрдХ рд╕рд╛рд░реНрдердХ рджреЛрд╣рд░рд╛рд╡ рд╣реИред рдпрд╣ рдЖрдкрдХреЛ рдЕрдХреЗрд▓реЗ рдЙрд╕ рдкрджрд╛рдиреБрдХреНрд░рдо рдореЗрдВ рдХрд┐рд╕реА рднреА рдШрдЯрдХ рдХреЛ рджреЗрдЦрдиреЗ рдФрд░ рдпрд╣ рд╕рдордЭрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕рдХреА рдирд┐рд░реНрднрд░рддрд╛рдПрдБ рдХрд╣рд╛рдБ рд╕реЗ рдЖрддреА рд╣реИрдВред рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдлрд╝реЙрд▓рдмреИрдХ рдХреЗ рд╕рд╛рде, рдЖрдкрдХреЛ рдпрд╛рдж рдирд╣реАрдВ рд░рд╣реЗрдЧрд╛ рдХрд┐ рдЖрдкрдиреЗ 3 рдорд╣реАрдиреЗ рдмрд╛рдж рдкрджрд╛рдиреБрдХреНрд░рдо рдореЗрдВ рдЙрди рдШрдЯрдХреЛрдВ рдХреЛ рдХрд╣рд╛рдБ рдЖрдпрд╛рдд рдХрд┐рдпрд╛ рдерд╛ред

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

рдХреЛрдИ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рджреБрдирд┐рдпрд╛ рдЙрдкрдпреЛрдЧ рдХрд╛ рдорд╛рдорд▓рд╛?

рдЫреЛрдЯреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЛрдВ рдореЗрдВ, рд╡рд┐рд╢реНрд╡ рд╕реНрддрд░ рдкрд░ рд╕рдм рдХреБрдЫ рдкрдВрдЬреАрдХреГрдд рдХрд░реЗрдВ; рдмрдбрд╝реЗ рдРрдкреНрд╕ рдореЗрдВ, рдкреНрд░рддреНрдпреЗрдХ рдШрдЯрдХ рдХреЗ рд▓рд┐рдП рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╣ рдЕрдзрд┐рдХ рд░рдЦрд░рдЦрд╛рд╡ рдпреЛрдЧреНрдп рд╣реИред рдпрд╣ рдХреБрдЫ рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдореЗрдВ рдЙрдкрдпреЛрдЧреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд▓рд╛рдн рд╡реИрд╢реНрд╡рд┐рдХ рд╡реНрдпрд╛рдкрд╛рд░ рдХреЗ рд╕рд╛рде рдЖрддрд╛ рд╣реИред 1.0 рдХреЗ рдкреАрдЫреЗ рдХрд╛ рд╡рд┐рдЪрд╛рд░ рдпрд╣ рд╣реИ рдХрд┐ "рдЕрдЧрд░ рдХреБрдЫ рдХреЗрд╡рд▓ рдорд╛рдореВрд▓реА рдЙрдкрдпреЛрдЧреА рд╣реИ, рдпрд╛ рд░рдЦрд░рдЦрд╛рд╡ рдкрд░ рдирдХрд╛рд░рд╛рддреНрдордХ рдкреНрд░рднрд╛рд╡ рдкрдбрд╝рддрд╛ рд╣реИ, рддреЛ рдЗрд╕реЗ рд╣рдЯрд╛ рджреЗрдВред"

рд╣рд╛рдВред рдореЗрд░реЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рдПрдХ рдкреЙрдкрдЕрдк рд╡рд┐рдВрдбреЛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдХрд╕реНрдЯрдо рд╕рдВрдкрд╛рджрдХ рддрддреНрд╡реЛрдВ рдХреА рдЬрдЯрд┐рд▓ рд╕рдВрд░рдЪрдирд╛ рд╣реИред рдЗрди рддрддреНрд╡реЛрдВ рдХреЛ 3-4 рд╕реНрддрд░реЛрдВ рдХреЗ рдкрджрд╛рдиреБрдХреНрд░рдо рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЬрд┐рд╕рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдореВрд▓ рддрддреНрд╡ рдХреЗ рд▓рд┐рдП рдЙрдиреНрд╣реЗрдВ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдШреЛрд╖рд┐рдд рдХрд░рдирд╛ рдЕрдХреНрд╖рдо рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ (3-5 рдореВрд▓ рдкреНрд░рдХрд╛рд░ * 10 рдШреЛрд╖рд┐рдд рддрддреНрд╡ = рджреЛрд╣рд░рд╛рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдХреЛрдб рдХреА 50 рдкрдВрдХреНрддрд┐рдпрд╛рдБ)ред рдФрд░, рдЙрдиреНрд╣реЗрдВ рд╡рд┐рд╢реНрд╡ рд╕реНрддрд░ рдкрд░ рдкрдВрдЬреАрдХреГрдд рдХрд░рдирд╛ рднреА рдЕрдЪреНрдЫрд╛ рдирд╣реАрдВ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рдЕрдиреНрдп рднрд╛рдЧреЛрдВ рдореЗрдВ рдХрднреА рдирд╣реАрдВ рджрд┐рдЦрд╛рдИ рджреЗрдВрдЧреЗред рддреЛ рдореИрдВ рдЙрдиреНрд╣реЗрдВ "рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ" рд▓реЛрдб рдХрд░рдирд╛ рдкрд╕рдВрдж рдХрд░реВрдВрдЧрд╛ред

рдЙрдиреНрд╣реЗрдВ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдЖрдпрд╛рдд рдХрд░рдирд╛ рдПрдХ рд╕рд╛рд░реНрдердХ рджреЛрд╣рд░рд╛рд╡ рд╣реИред рдпрд╣ рдЖрдкрдХреЛ рдЕрдХреЗрд▓реЗ рдЙрд╕ рдкрджрд╛рдиреБрдХреНрд░рдо рдореЗрдВ рдХрд┐рд╕реА рднреА рдШрдЯрдХ рдХреЛ рджреЗрдЦрдиреЗ рдФрд░ рдпрд╣ рд╕рдордЭрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕рдХреА рдирд┐рд░реНрднрд░рддрд╛рдПрдБ рдХрд╣рд╛рдБ рд╕реЗ рдЖрддреА рд╣реИрдВред рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдлрд╝реЙрд▓рдмреИрдХ рдХреЗ рд╕рд╛рде, рдЖрдкрдХреЛ рдпрд╛рдж рдирд╣реАрдВ рд░рд╣реЗрдЧрд╛ рдХрд┐ рдЖрдкрдиреЗ 3 рдорд╣реАрдиреЗ рдмрд╛рдж рдкрджрд╛рдиреБрдХреНрд░рдо рдореЗрдВ рдЙрди рдШрдЯрдХреЛрдВ рдХреЛ рдХрд╣рд╛рдБ рдЖрдпрд╛рдд рдХрд┐рдпрд╛ рдерд╛ред

@yyx990803 рдореЗрд░реА рдпрд╛рджрджрд╛рд╢реНрдд рдЕрдЪреНрдЫреА рд╣реИ, рдзрдиреНрдпрд╡рд╛рджред рддреЛ рдореБрдЭреЗ рдпрд╛рдж рд╣реЛрдЧрд╛ рдХрд┐ рдореЗрд░реЗ рдРрдк рдореЗрдВ рджреЛ рдмрд╣реБрдд рдЕрд▓рдЧ рдЯреБрдХрдбрд╝реЗ рд╣реИрдВ, рдЙрдирдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдЗрд╕рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢рд┐рд╖реНрдЯ рдШрдЯрдХреЛрдВ рдХреЗ рдПрдХ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рд╕реЗрдЯ рдХреЛ рдкрдВрдЬреАрдХреГрдд рдХрд░ рд░рд╣рд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП рдореИрдВ рдЕрдкрдиреА рд╕рдВрдкрддреНрддрд┐рдпреЛрдВ рдХреЛ рд▓реЛрдб рдХрд░рдиреЗ рдХрд╛ рд╡рд┐рдХрд▓реНрдк рдЪреБрдирдирд╛ рдкрд╕рдВрдж рдХрд░реВрдВрдЧрд╛ (рдФрд░ рдореБрдЭреЗ рд╕рдВрджреЗрд╣ рд╣реИ рдХрд┐ рдХрд╕реНрдЯрдо рдирд┐рд░реНрджреЗрд╢реЛрдВ рдФрд░ рдлрд╝рд┐рд▓реНрдЯрд░ рдХреЗ рд╕рд╛рде рднреА рдРрд╕рд╛ рд╣реА рд╣реБрдЖ рдерд╛)ред

рдореБрдЭреЗ рдЕрдкрдирд╛ рдкреНрд░рднрд╛рд╡ рд╕рд╛рдЭрд╛ рдХрд░рдиреЗ рджреЗрдВред рдореИрдВрдиреЗ 0.12.x рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд┐рдпрд╛ рдФрд░ рдпрд╣ рдмрд╣реБрдд рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдЪрд▓рд╛ рдЧрдпрд╛ (рдХреБрдЫ рдорд╛рдореВрд▓реА рд╕реАрдЦрдиреЗ рдХреА рдЕрд╡рд╕реНрдерд╛ рд╡рд╛рд▓реА рдЪреАрдЬреЗрдВ)ред рдиреНрдпреВрдирддрдо рдФрд░ рд╕реНрд╡рдЪреНрдЫ рдПрдкреАрдЖрдИ, рд╡рд╛рдХреНрдп рд░рдЪрдирд╛, рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рдХреЛрдбред рдЕрдм, рд╣рдо 1.0.0-рдмреАрдЯрд╛ рдкрд░ рд╣реИрдВ рдФрд░ рдпрд╣ рдмрджрддрд░ рд╣реЛ рдЧрдпрд╛, рдмреЗрд╣рддрд░ рдирд╣реАрдВред рдЕрдзрд┐рдХ рдХреЛрдб рджреЛрд╣рд░рд╛рд╡, рдореЗрд░реЗ рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рд╕реБрд╡рд┐рдзрд╛рдПрдБ рдореБрдЭреЗ рдПрдХ рд╣реА рдХреЛрдб рдХреЛ рдмрд╛рд░-рдмрд╛рд░ рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдЯрд╛ рджреЗрддреА рд╣реИрдВред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореИрдВрдиреЗ рд░рд┐рдПрдХреНрдЯ рдкрд░ Vue рдЪреБрдирдиреЗ рдореЗрдВ рдЧрд▓рддреА рдХреА рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдореЗрд░реЗ рд╕рдордп рдХреА рдмрд░реНрдмрд╛рджреА рдФрд░ рдХреЛрдИ рдФрд░ рдмрджрд▓рд╛рд╡ рдирд╣реАрдВ рд╣реЛрдЧрд╛ред

@ рдХрд╛рд░реЗрд╡рди

  1. рдпрд╣ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдЙрдкрдпреЛрдЧреА рд╣реЛрдЧрд╛ рдпрджрд┐ рдЖрдк рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЙрди рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЪреАрдЬреЛрдВ рдХреЛ рд╕реВрдЪреАрдмрджреНрдз рдХрд░рддреЗ рд╣реИрдВ рдЬрд┐рдиреНрд╣реЛрдВрдиреЗ рдЗрд╕ рдореБрджреНрджреЗ рдХреЗ рдЕрд▓рд╛рд╡рд╛ рджреЗрд╡ рдЕрдиреБрднрд╡ рдХреЛ рдФрд░ рднреА рдЦрд░рд╛рдм рдХрд░ рджрд┐рдпрд╛ рд╣реИред
  2. 1.0.0-рдЕрд▓реНрдлрд╛ рдкреВрд░реНрд╡-рд░рд┐рд▓реАрдЬрд╝ рд╣реИрдВ, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рдкрд╣рд▓реЗ рд╕реНрдерд╛рди рдкрд░ рдХреЛрдИ рдПрдкреАрдЖрдИ рд╕реНрдерд┐рд░рддрд╛ рдЧрд╛рд░рдВрдЯреА рдирд╣реАрдВ рдереАред рдпрджрд┐ рдЖрдк рд╕реНрдерд┐рд░рддрд╛ рдХреЛ рдорд╣рддреНрд╡ рджреЗрддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ 0.12 рдкрд░ рдЯрд┐рдХреЗ рд░рд╣рдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рд╕реНрдерд┐рд░ 1.0 рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рдиреА рдЪрд╛рд╣рд┐рдП (рдЬрд┐рд╕рдореЗрдВ рдЕрдВрддрд┐рдо рдорд╛рдЗрдЧреНрд░реЗрд╢рди рд░рд┐рд▓реАрдЬрд╝ рднреА рд╣реЛрдЧреА)ред рдкреВрд░реНрд╡-рд░рд┐рд▓реАрдЬрд╝ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рдЖрдк рд▓рдЧрд╛рддрд╛рд░ рдЯреВрдЯрдиреЗ рд╡рд╛рд▓реЗ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рд╕реЗ рдирд┐рдкрдЯрдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд╣рдордд рд╣реИрдВред
  3. 1.0.0-рдмреАрдЯрд╛ рднреА рдЬрд╛рд░реА рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдЧреИрд░-рд░рд┐рд▓реАрдЬрд╝, рдХрд╛рд░реНрдп-рдкреНрд░рдЧрддрд┐ рд╡рд╛рд▓реА рд╢рд╛рдЦрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╢рд╛рдпрдж рдПрдХ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдЪрд╛рд░ рдирд╣реАрдВ рд╣реИред
  4. рдореИрдВ рдЕрдкрдиреЗ рдЕрдиреБрднрд╡ рдФрд░ рдкреВрд░реЗ рд╕рдореБрджрд╛рдп рдХреЗ рдлреАрдбрдмреИрдХ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдПрдкреАрдЖрдИ рдбрд┐рдЬрд╛рдЗрди рдХрд░ рд░рд╣рд╛ рд╣реВрдВред рдЖрдк рдЬреЛ рдХреБрдЫ рднреА рд╕реЛрдЪрддреЗ рд╣реИрдВ, рдЙрд╕рдХреЗ рдЖрдк рд╣рдХрджрд╛рд░ рд╣реИрдВ, рдФрд░ рдпрджрд┐ рдкрд░рд┐рд╡рд░реНрддрди рдЙрд╕ рджрд┐рд╢рд╛ рдореЗрдВ рдирд╣реАрдВ рд╣реИрдВ рдЬреЛ рдЖрдкрдХреЛ рдкрд╕рдВрдж рд╣реИ, рддреЛ рдЖрдк рдмреЗрдЭрд┐рдЭрдХ рдЕрдиреНрдп рд░реВрдкрд░реЗрдЦрд╛рдУрдВ рдкрд░ рд╕реНрд╡рд┐рдЪ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред (рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рд░рд┐рдПрдХреНрдЯ рдореЗрдВ рдЖрдкрдХреЛ рд╕рдм рдХреБрдЫ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдЖрдпрд╛рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдФрд░ рдФрд░ рднреА рд╕рд╛рдорд╛рди рджреЛрд╣рд░рд╛рдирд╛ рд╣реЛрдЧрд╛ред)
  1. рдЪрд░реНрдЪрд╛ #1170 рдкрдврд╝рдиреЗ рдХреЗ рдмрд╛рдж рдЕрдм рдореИрдВ рд▓рдЧрднрдЧ рд╕рд╣рдордд рд╣реВрдБред рд▓реЗрдХрд┐рди .. рдореБрдЭреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдореМрдЬреВрджрд╛ рдХреЛрдб рдХреЛ рд╣рдЯрд╛рдиреЗ рдореЗрдВ рдХреЛрдИ рдмрд┐рдВрджреБ рдирд╣реАрдВ рджрд┐рдЦ рд░рд╣рд╛ рд╣реИ рдЬреЛ рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреЛ рдХреЗрд╡рд▓ strict: true рдХреЛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдмрдирд╛рдиреЗ рдХреЗ рдмрдЬрд╛рдп рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рд╕реНрд╡рд╛рдж рдЕрд▓рдЧ рд╣реИ, рдФрд░ рдХреБрдЫ рд▓реЛрдЧ "рдлреЙрд▓рдмреИрдХ" рджреГрд╖реНрдЯрд┐рдХреЛрдг рд░рдЦрдирд╛ рдкрд╕рдВрдж рдХрд░реЗрдВрдЧреЗ, рдЬреЛ рдХрднреА-рдХрднреА рдЕрдзрд┐рдХ рд╕рд╣рдЬ рд╣реЛрддрд╛ рд╣реИред рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, рдЬрдм рдШрдЯрдХреЛрдВ рдХреЛ рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ рд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕реЗ рдорд┐рдХреНрд╕рд┐рдиреНрд╕, рдлреИрдХреНрдЯреНрд░рд┐рдпреЛрдВ рдЖрджрд┐ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕рдореЗрдВ рдХреАрдорддреА рд╕рдордп рд▓рдЧрддрд╛ рд╣реИред
  2. рдЬрд╝рд░реВрд░ред рд▓реЗрдХрд┐рди "рдЖрджрд░реНрд╢ рд╡рд╛рд╕реНрддреБрдХрд▓рд╛" рдФрд░ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреА рд▓рд╛рдЧрдд рдХреЗ рдмреАрдЪ рд╣рдореЗрд╢рд╛ рд╕рдВрддреБрд▓рди рд╣реЛрддрд╛ рд╣реИред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдХреЛрдб рдХреА рдХреБрдЫ рдкрдВрдХреНрддрд┐рдпрд╛рдБ (рдЕрд░реНрдерд╛рддреН: рд▓рдЧрднрдЧ 10) рдЬреЛ рдХрд┐рд╕реА рдХреЛ рднреА рдЪреЛрдЯ рдирд╣реАрдВ рдкрд╣реБрдБрдЪрд╛рдПрдБрдЧреА рдпрджрд┐ рдЙрдиреНрд╣реЗрдВ рдЫреЛрдбрд╝ рджрд┐рдпрд╛ рдЬрд╛рдП рддреЛ рдореБрдЭреЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╕рдордп рд▓рдЧ рдЧрдпрд╛ред рдФрд░ рдореБрдЭреЗ рдЗрд╕ рдЕрд╕реНрдерд┐рд░ рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдХреНрдпреЛрдВрдХрд┐ рдореБрдЭреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ "рд░реАрдб-рд░рд╛рдЗрдЯ рдмрд╛рдЗрдВрдбрд┐рдВрдЧ рдлрд┐рд▓реНрдЯрд░" рд╕реБрд╡рд┐рдзрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЬрд┐рдиреНрд╣реЗрдВ рд╢рд╛рдпрдж 0.12.x рдкрд░ рдмреИрдХрдкреЛрд░реНрдЯ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред
  3. 2 рджреЗрдЦреЗрдВред
  4. рд╕рд╡рд╛рд▓ рдпрд╣ рдирд╣реАрдВ рд╣реИ рдХрд┐ "рдореИрдВ рдХреМрди рд╕рд╛ рдПрдкреАрдЖрдИ рдкрд╕рдВрдж рдХрд░рддрд╛ рд╣реВрдВ"ред рдореБрдЭреЗ Vue рдкрд╕рдВрдж рд╣реИред рдЕрд╡рдзрд┐ред рд╕рд╡рд╛рд▓ рдпрд╣ рд╣реИ рдХрд┐ "рдЕрдЧрд░ рдореИрдВ рд▓рдВрдмреА рдЕрд╡рдзрд┐ рдореЗрдВ Vue API рдкрд░ рднрд░реЛрд╕рд╛ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ"ред рд╕реБрдВрджрд░рддрд╛ рдкрд░ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдпрддрд╛ред рдпрджрд┐ рдкрд░рд┐рд╡рд░реНрддрди рдЯреВрдЯ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдЙрдирдХреЗ рд▓рд┐рдП рдЧрдВрднреАрд░ рдХрд╛рд░рдг рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдирдП рдмрд╛рдзреНрдпрдХрд╛рд░реА рд╡рд╛рдХреНрдпрд╡рд┐рдиреНрдпрд╛рд╕ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдЬрд┐рд╕рдиреЗ рдореЗрд░реЗ рд╕рднреА рдХреЛрдб рдХреЛ рддреЛрдбрд╝ рджрд┐рдпрд╛ - рдареАрдХ рд╣реИ, рдЗрд╕реЗ рд░рд╣рдиреЗ рджреЗрдВ, рдпрд╣ рдЕрдзрд┐рдХ рдкрдардиреАрдп рд╣реИ рдФрд░ рдмреЗрд╣рддрд░ рдХреЛрдб рд╕рдВрд░рдЪрдирд╛ рдХреЛ рдордЬрдмреВрд░ рдХрд░рддрд╛ рд╣реИред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ - рдирд╣реАрдВред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рд╕реЗрдЯ options.strict = true рдХреЗ рд╕рд╛рде рдпрд╣ рдкрд░рд┐рд╡рд░реНрддрди рдЧреИрд░-рдмреНрд░реЗрдХрд┐рдВрдЧ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

рд╣рд╛рдВ, рдЕрдкрдЧреНрд░реЗрдб рдХрд░рдирд╛ рд╣рдореЗрд╢рд╛ рд░рд┐рдлреИрдХреНрдЯрд░рд┐рдВрдЧ рдХреЗ рджрд░реНрдж рдХреЗ рд╕рд╛рде рдЖрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди 1.0 рд╣реА Vue рдХреЗ рд▓рд┐рдП рдЗрди рд▓реАрдЧреЗрд╕реА рдХреЙрдиреНрдлрд┐рдЧ рд╡рд┐рдХрд▓реНрдкреЛрдВ рд╕реЗ рдореБрдХреНрдд рд╣реЛрдиреЗ рдХрд╛ рдПрдХрдорд╛рддреНрд░ рдореМрдХрд╛ рд╣реИред 1.0 рдХреЗ рдмрд╛рдж рдпрд╣ рд╕рдЦреНрддреА рд╕реЗ рд╕реАрд╡рд░ рд╣реЛ рдЬрд╛рдПрдЧрд╛, рдФрд░ 2.0 рддрдХ рдХреБрдЫ рднреА рдирд╣реАрдВ рдЯреВрдЯрдирд╛ рдЪрд╛рд╣рд┐рдПред рдФрд░ рдореИрдВ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХрд┐ 1.x рдпрдерд╛рд╕рдВрднрд╡ рд▓рдВрдмреЗ рд╕рдордп рддрдХ рдЪрд▓реЗ, рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдиреЗ рдЬрд┐рд╕ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдпрддрд╛ рдореБрджреНрджреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХреА рдереАред

рд╕рдЦреНрдд рдореЛрдб рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ: рдЬрдм рдЖрдк рдЗрд╕ рдкрд░ рдмрд╣реБрдд рдЕрдзрд┐рдХ рднрд░реЛрд╕рд╛ рдХрд░рддреЗ рд╣реИрдВ рддреЛ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рд░рд┐рдлреИрдХреНрдЯрд░рд┐рдВрдЧ рд╕рдордп рдЦрд░реНрдЪ рд╣реЛрддрд╛ рд╣реИ - рд▓реЗрдХрд┐рди рдЖрджрд░реНрд╢ рд░реВрдк рд╕реЗ рдирдП рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдЬреЛ 1.0 рдХреЗ рдмрд╛рдж Vue рдЙрдард╛рддреЗ рд╣реИрдВ, рдЙрдиреНрд╣реЗрдВ рдпрд╣ рдЬрд╛рдирдиреЗ рдХреА рднреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рдореМрдЬреВрдж рд╣реИред рдПрдкреАрдЖрдИ рдХреА рд╕рддрд╣ рдпрдерд╛рд╕рдВрднрд╡ рдЫреЛрдЯреА рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП, рдФрд░ рд╡реИрд╢реНрд╡рд┐рдХ рд╕рдВрд░рдЪрдирд╛ рдкреИрдЯрд░реНрди рдпрдерд╛рд╕рдВрднрд╡ рд╕реБрд╕рдВрдЧрдд рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рд╕рдЦреНрдд рдореЛрдб рдХреЛ рдЕрдХреНрд╖рдо рдХрд░рдирд╛ рд╕рдВрднрд╡ рдмрдирд╛рдирд╛ рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдк рд╕реЗ Vue рдРрдкреНрд╕ рдХреЛ рд╕рдВрд░рдЪрд┐рдд рдХрд░рдиреЗ рдХреА рджреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рдкреНрд░реЛрддреНрд╕рд╛рд╣рд┐рдд рдХрд░рддрд╛ рд╣реИ - рдХрд▓реНрдкрдирд╛ рдХрд░реЗрдВ рдХрд┐ рд▓реЛрдЧ рдПрдХ рдРрдк рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдЬреЛ strict: true рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рдлрд┐рд░ рдХрд┐рд╕реА рдЕрдиреНрдп рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдкрд░ рдЬрд╛ рд░рд╣рд╛ рд╣реИ рдЬреЛ strict: false рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ ... рдпрд╣ рдмрдирд╛рддрд╛ рд╣реИ рдбреЗрд╡рд▓рдкрд░ рдЕрдиреБрднрд╡ рдХрд╛ рд╡рд┐рдЦрдВрдбрди, рдФрд░ рдореИрдВ рдЙрд╕ рд╕рдВрднрд╛рд╡рдирд╛ рд╕реЗ рдЫреБрдЯрдХрд╛рд░рд╛ рдкрд╛рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ, рдФрд░ 1.0 рдРрд╕рд╛ рдХрд░рдиреЗ рдХрд╛ рдПрдХрдорд╛рддреНрд░ рдЙрдЪрд┐рдд рд╕реНрдерд╛рди рд╣реИред

рдЗрд╕ рд╕рдВрдХреНрд░рдордг рдХреЗ рдмреАрдЪ рдореЗрдВ рдлрдВрд╕рдирд╛ рдЖрдкрдХреЗ рд▓рд┐рдП рдПрдХ рддрд░рд╣ рд╕реЗ рджреБрд░реНрднрд╛рдЧреНрдпрдкреВрд░реНрдг рд╣реИ, рдФрд░ рдореИрдВ рдЖрдкрдХреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреА рд╕рд░рд╛рд╣рдирд╛ рдХрд░рддрд╛ рд╣реВрдВред рд▓реЗрдХрд┐рди рдЬреЛ рдХрд░рдирд╛ рд╣реИ рд╡рд╣ рдХрд░рдирд╛ рд╣реА рд╣реЛрдЧрд╛ред

@ yyx990803 рдореИрдВ рдПрдХ рдареЛрд╕ рдЙрдкрдпреЛрдЧ рдХрд╛ рдорд╛рдорд▓рд╛ рджреЗрдЦ рд╕рдХрддрд╛ рд╣реВрдВ рдЬрд┐рд╕рдХреЗ рд╕рд╛рде рдореИрдВ рдлрдВрд╕ рдЧрдпрд╛ рд╣реВрдВред

рдореИрдВ рдХреНрдпрд╛ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реВрдБ

рдореИрдВ рдПрдХ рд╡рд┐рд╕реНрддрд╛рд░ рдпреЛрдЧреНрдп рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрдирд╛рддрд╛ рд╣реВрдВ: рд╡рд┐рдЧреЗрдЯреНрд╕ рдХреЗ рд╕рд╛рде рд╡рд┐рд╕реНрддрд╛рд░ рдпреЛрдЧреНрдпред рдПрдХ рд╡рд┐рдЬреЗрдЯ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХрд╛ рдПрдХ рдбреЗрд╡рд▓рдкрд░ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдЯреБрдХрдбрд╝рд╛ рд╣реИ рдЬреЛ рдЗрд╕реЗ рдХреБрдЫ рдмрд┐рдВрджреБрдУрдВ рдкрд░ рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡реИрд╢реНрд╡рд┐рдХ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рдкреНрд▓рдЧ рдХрд░рддрд╛ рд╣реИ; рдпрд╣ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рдкрд░ рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ рд▓реЛрдб рд╣реЛрддрд╛ рд╣реИред рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рдкреНрд░рддреНрдпреЗрдХ рдЗрдВрд╕реНрдЯреЗрдВрд╕ рдореЗрдВ рд╡рд┐рдЬреЗрдЯреНрд╕ рдХреЗ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╕реЗрдЯ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ 2 рдЗрдВрд╕реНрдЯреЗрдВрд╕ рдПрдХ рд╣реА рдкреЗрдЬ рдкрд░ рд▓рд╛рдЗрд╡ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред

рд▓реЛрдб рд╣реЛрдиреЗ рдкрд░ рд╡рд┐рдЬреЗрдЯ vuejs рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рдПрдХ рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ рдирд┐рд░реНрдорд┐рдд рдШрдЯрдХ рдЬреЛрдбрд╝ рджреЗрдЧрд╛ред
рд╡рд┐рдЬреЗрдЯ рдореЗрдВ рдЕрдиреНрдп рд╡рд┐рдЬреЗрдЯ (рдмрдЪреНрдЪреЗ) рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рд╣рдо рдЗрд╕ рдмрд╛рдд рд╕реЗ рдЕрд╡рдЧрдд рдирд╣реАрдВ рд╣реИрдВ рдХрд┐ рдпрд╣ рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рдкрд░ рдХреИрд╕рд╛ рд╣реЛрдЧрд╛ рдХреНрдпреЛрдВрдХрд┐ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд▓реЛрдб рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рджреНрд╡рд╛рд░рд╛ рдЗрд╕ рднрд╛рдЧ рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП рд╡рд┐рдЬреЗрдЯреНрд╕ рдХреЛ рдПрдХ-рджреВрд╕рд░реЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдЧрд░реВрдХ рд╣реЛрдиреЗ рдФрд░ рдЕрдиреНрдп рд╡рд┐рдЬреЗрдЯреНрд╕ рдХреЛ рдкрдВрдЬреАрдХреГрдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рд╕рдорд╕реНрдпрд╛

рдореИрдВ рдЗрди рд╡рд┐рдЬреЗрдЯреНрд╕ рдХреЛ рд╡рд┐рд╢реНрд╡ рд╕реНрддрд░ рдкрд░ рдкрдВрдЬреАрдХреГрдд рдХрд░рдиреЗ рд╕реЗ рдмрдЪрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ (рд╕рдВрдЧрддрддрд╛ рдХрд╛рд░рдг)ред
рдЪреВрдВрдХрд┐ рдШрдЯрдХреЛрдВ рдХреЛ рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ рдмрдирд╛рдпрд╛ рдФрд░ рд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рдкреНрд░рддреНрдпреЗрдХ рдШрдЯрдХ рдореЗрдВ рд╕рднреА рдШрдЯрдХреЛрдВ рдХреЛ рдкрдВрдЬреАрдХреГрдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдмрдЪреНрдЪреЗ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ рдмрд╣реБрдд рд╕рд╛рд░реЗ рдкрдВрдЬреАрдХрд░рдг рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рджреЗрдЦреЗрдВ рдХрд┐ рдореЗрд░рд╛ рдХреНрдпрд╛ рдорддрд▓рдм рд╣реИ (рдХреГрдкрдпрд╛ рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдлрд┐рд▓рд╣рд╛рд▓ рдореИрдВрдиреЗ рдШрдЯрдХреЛрдВ рдХреЗ рд╕реНрдерд╛рдиреАрдп рдкрдВрдЬреАрдХрд░рдг рдХреА рдХреЛрд╢рд┐рд╢ рдирд╣реАрдВ рдХреА, рд╡реИрд╢реНрд╡рд┐рдХ рдкрдВрдЬреАрдХрд░рдг рдХреЗ рд╕рд╛рде рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛):

var components = {

    appComponents: {
       template: "...",
       components: components
    },

    appComponents2: {
       template: "...",
       components: components
    },

    widgetComponents: {
       template: "...",
       components: components
    },

    widgetComponents2: {
       template: "...",
       components: components
    },

}

рдХреНрдпрд╛ рдРрд╕рд╛ рдХрд░рддреЗ рд╕рдордп рдХреЛрдИ рдкреНрд░рджрд░реНрд╢рди рдмрд╛рдзрд╛ рд╣реИ?

рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ "рдЕрд░реНрдз рд╡реИрд╢реНрд╡рд┐рдХ" рдШрдЯрдХ рдХрд╛ рджрд╛рдпрд░рд╛ рдЙрдкрдпреЛрдЧреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдпрд╣ рдШрдЯрдХ рдХреЗ рдПрдХ рдмрдВрдж рджрд╛рдпрд░реЗ рдХреЗ рд╕рд╛рде рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЛ рдмрдирд╛рдиреЗ рдореЗрдВ рдорджрдж рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдЬрд╣рд╛рдВ рдШрдЯрдХ рд░реВрдЯ рдФрд░ рдмрдЪреНрдЪреЛрдВ рдХреЗ рдШрдЯрдХреЛрдВ рд╕реЗ рдкрд╣реБрдВрдЪ рдпреЛрдЧреНрдп рд╣реЛрдВрдЧреЗред рд▓реЗрдХрд┐рди рдЕрдиреНрдп vuejs рдЬрдбрд╝реЛрдВ рд╕реЗ рдирд╣реАрдВред рддреБрдо рдХреНрдпрд╛ рд╕реЛрдЪрддреЗ рд╣реЛ?

рд╡реИрд╢реНрд╡рд┐рдХ рдкрдВрдЬреАрдХрд░рдг рдкреБрдирд░рд╛рд╡рд░реНрддреА рд░реВрдк рд╕реЗ рдкрдВрдЬреАрдХреГрдд рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ, рдпрд╣ рдХреЗрд╡рд▓ рдкрдВрдЬреАрдХреГрдд рдХрд░рддрд╛ рд╣реИ
рдШрдЯрдХ рд╕реНрд╡рдпрдВ рдФрд░ рдЗрд╕рдХреЗ рдЕрдВрджрд░ рдирд╣реАрдВ components рд╡рд┐рдХрд▓реНрдкред рддреЛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ
рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рдереАред

рд╕реЛрдо, 22 рдЕрдЧрд╕реНрдд 2016 рдХреЛ 16:00 рд╕реМрдлрд┐рдПрди рдЧрд╝рдЬрд╝рд▓ рдиреЛрдЯрд┐рдлрд┐рдХреЗрд╢рди @github.com рдиреЗ рд▓рд┐рдЦрд╛:

@yyx990803 https://github.com/yyx990803 рдореИрдВ рдПрдХ рдареЛрд╕ рдЙрдкрдпреЛрдЧ рдХрд╛ рдорд╛рдорд▓рд╛ рджреЗрдЦ рд╕рдХрддрд╛ рд╣реВрдВ
рдореИрдВ рдПрдХ рддрд░рд╣ рд╕реЗ рдлрдВрд╕ рдЧрдпрд╛ рд╣реВрдБред

_рдореИрдВ рдХреНрдпрд╛ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ_

рдореИрдВ рдПрдХ рд╡рд┐рд╕реНрддрд╛рд░ рдпреЛрдЧреНрдп рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрдирд╛рддрд╛ рд╣реВрдВ: рд╡рд┐рдЧреЗрдЯреНрд╕ рдХреЗ рд╕рд╛рде рд╡рд┐рд╕реНрддрд╛рд░ рдпреЛрдЧреНрдпред рдПрдХ рд╡рд┐рдЬреЗрдЯ рд╣реИ a
рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рдбреЗрд╡рд▓рдкрд░ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдЯреБрдХрдбрд╝реЗ, рдпрд╣ рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ рд▓реЛрдб рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ
рдЖрд╡реЗрджрди рдХреА рд╢реБрд░реБрдЖрддред рдЖрд╡реЗрджрди рдХреЗ рдкреНрд░рддреНрдпреЗрдХ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ
рд╡рд┐рдЧреЗрдЯреНрд╕ рдХрд╛ рдЕрд▓рдЧ рд╕реЗрдЯред

рд▓реЛрдб рд╣реЛрдиреЗ рдкрд░ рд╡рд┐рдЬреЗрдЯ рдореЗрдВ рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдШрдЯрдХ рдЬреЛрдбрд╝ рджреЗрдЧрд╛
рд╡реАрдпреВрдЬреЗрдПрд╕ рдЖрд╡реЗрджрдиред
рд╡рд┐рдЬреЗрдЯ рдореЗрдВ рдЕрдиреНрдп рд╡рд┐рдЬреЗрдЯ (рдмрдЪреНрдЪреЗ) рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рд╣рдореЗрдВ рдЗрд╕рдХреА рдЬрд╛рдирдХрд╛рд░реА рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рдХреИрд╕реЗ рд╣реЛрддрд╛ рд╣реИ
рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рдкрд░ рд╣реЛрдЧрд╛ рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕ рднрд╛рдЧ рдХреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ
рдЖрд╡реЗрджрди рд▓реЛрдб рд╣реЛ рдЧрдпрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП рд╡рд┐рдЧреЗрдЯреНрд╕ рдХреЛ рдПрдХ рджреВрд╕рд░реЗ рдХреЗ рдкреНрд░рддрд┐ рдЬрд╛рдЧрд░реВрдХ рд░рд╣рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИред

_рд╕рдорд╕реНрдпрд╛_

рдореИрдВ рдЗрди рд╡рд┐рдЬреЗрдЯреНрд╕ рдХреЛ рд╡рд┐рд╢реНрд╡ рд╕реНрддрд░ рдкрд░ рдкрдВрдЬреАрдХреГрдд рдХрд░рдиреЗ рд╕реЗ рдмрдЪрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред
рдЪреВрдВрдХрд┐ рд╡рд┐рдЬреЗрдЯ рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ рд▓реЛрдб рд╣реЛрддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рд╕рднреА рд╡рд┐рдЬреЗрдЯ рдХреЛ рдкрдВрдЬреАрдХреГрдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ
рдкреНрд░рддреНрдпреЗрдХ рд╡рд┐рдЬреЗрдЯ рдЬрд┐рд╕рдореЗрдВ рдмрдЪреНрдЪреЗ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ рдмрд╣реБрдд рд╕рд╛рд░реЗ рдкрдВрдЬреАрдХрд░рдг рдХрд░рддрд╛ рд╣реИ
рдЗрд╕реНрддреЗрдорд╛рд▓ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рджреЗрдЦреЛ:

рд╡рд░ рдШрдЯрдХ = {

appComponents: {
   template: "...",
   components: components
},

appComponents2: {
   template: "...",
   components: components
},

}

_рдХреНрдпрд╛ рдРрд╕рд╛ рдХрд░рддреЗ рд╕рдордп рдХреЛрдИ рдкреНрд░рджрд░реНрд╢рди рдмрд╛рдзрд╛ рд╣реИ?_

-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдиреЗ рдЗрд╕ рдереНрд░реЗрдб рдХреА рд╕рджрд╕реНрдпрддрд╛ рд▓реА рд╣реИред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рд╕реАрдзреЗ рдЙрддреНрддрд░ рджреЗрдВ, рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ
https://github.com/vuejs/vue/issues/1297#issuecomment -241339596, рдпрд╛ рдореНрдпреВрдЯ рдХрд░реЗрдВ
рд╕реВрддреНрд░
https://github.com/notifications/unsubscribe-auth/AFTLl6QDePtH93VOU2lgrC72Z0vKLsv-ks5qiVcXgaJpZM4F7M1v
.

@fnlctrl рдпрд╣ рд╡реИрд╢реНрд╡рд┐рдХ рдкрдВрдЬреАрдХрд░рдг рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирд╣реАрдВ рд╣реИред

рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐

  • рд╕рднреА Vue+рдШрдЯрдХ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП рд╡реИрд╢реНрд╡рд┐рдХ рдкрдВрдЬреАрдХрд░рдг рд░рдЬрд┐рд╕реНрдЯрд░ред
  • рдХреЗрд╡рд▓ рд╡рд░реНрддрдорд╛рди рдШрдЯрдХ рдХреЗ рд▓рд┐рдП рд╕реНрдерд╛рдиреАрдп рдкрдВрдЬреАрдХрд░рдг рд░рдЬрд┐рд╕реНрдЯрд░
  • рдФрд░ рд░реВрдЯ рдФрд░ рдмрдЪреНрдЪреЛрдВ "рд╕реЗрдореА рдЧреНрд▓реЛрдмрд▓" рдХреЗ рд▓рд┐рдП рдкрдВрдЬреАрдХрд░рдг рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реИ: рдХреБрдЫ рдРрд╕рд╛ рдЬреЛ рд╡рд░реНрддрдорд╛рди рд╡реАрдпреВ рдЗрдВрд╕реНрдЯреЗрдВрд╕ рдХреЗ рд▓рд┐рдП рдкрдВрдЬреАрдХрд░рдг рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ (рдЗрд╕ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рдЬреЛрдбрд╝реЗ рдЧрдП рдШрдЯрдХреЛрдВ рд╕рд╣рд┐рдд)ред

рдореЗрд░реА рд░рд╛рдп рдореЗрдВ рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ vue рд╣рд╛рд▓рд╛рдВрдХрд┐ рд╕реНрдерд┐рд░ (рд╡реИрд╢реНрд╡рд┐рдХ) рддрд░реАрдХреЗ рдХреЗ рд▓рд┐рдП рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдкреИрдХ/рд╡рд┐рддрд░рдг рдпреЛрдЧреНрдп (рд╕реНрдерд╛рдиреАрдп) рддрд░реАрдХреЗ рд╕реЗ рдкреНрд░рддрд┐рдмрдВрдзрд┐рдд рд╣реИред

semi-global рдкрдВрдЬреАрдХрд░рдг рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╕рдВрднрд╡ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ Vue рдореЗрдВ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рд╡рд┐рд░рд╛рд╕рдд рд╣реИред
https://jsfiddle.net/fnlCtrl/32dt9e9g/

@fnlctrl
рдореБрдЭреЗ рд╕рдордЭ рдореЗрдВ рдирд╣реАрдВ рдЖ рд░рд╣рд╛ рд╣реИ рдХрд┐ рдЖрдк рдЕрдкрдиреЗ рджреНрд╡рд╛рд░рд╛ рднреЗрдЬреА рдЧрдИ рдкрд╣реЗрд▓реА рдХреЗ рд╕рд╛рде рдХреНрдпрд╛ рджрд┐рдЦрд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ (рдХреГрдкрдпрд╛ рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдЖрдкрдХреЗ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рддреНрд░реБрдЯрд┐ рд╣реИ: Unknown custom element: <bar> - did you register the component correctly? )

рдореИрдВ рдкрд░реНрдпрд╛рдкреНрдд рд░реВрдк рд╕реЗ рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд╣реВрдВ, рд╢рд╛рдпрдж рдЖрдк рд╕рдордЭ рдирд╣реАрдВ рдкрд╛рдП рдХрд┐ рдореИрдВ рдХреНрдпрд╛ рд╕рдордЭрд╛рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред рдЪрд▓реЛ рдлрд┐рд░ рд╕реЗ рд╢реБрд░реБ рдХрд░рддреЗ рд╣реИрдВ:

рдореИрдВ рдЬреЛ рд╕рдордЭрд╛рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рд╡рд╣ рдпрд╣ рд╣реИ рдХрд┐ рд╣рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

  • Vue.component('name', {...}) рдХреЗ рд╕рд╛рде рдЧреНрд▓реЛрдмрд▓реА рд░рдЬрд┐рд╕реНрдЯрд░ рдШрдЯрдХ (рдпрд╣ рд╕рд┐рдВрдЧрд▓ рдкреЗрдЬ рдРрдк рдХреЗ рд▓рд┐рдП рдПрдХрджрдо рд╕рд╣реА рд╣реИ)
  • рдШрдЯрдХ new Vue({ components: {...} }); рдореЗрдВ рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ рдПрдХ рдШрдЯрдХ рдкрдВрдЬреАрдХреГрдд рдХрд░реЗрдВ (рдпрд╣ рд╕реНрдерд╛рдиреАрдп рдкреБрди: рдкреНрд░рдпреЛрдЬреНрдп рдХреЗ рд▓рд┐рдП рдирд┐рд░реНрднрд░рддрд╛ рд╡рд╛рд▓реЗ рдШрдЯрдХреЛрдВ рдХреЛ рд╢рд┐рдк рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдЪреНрдЫрд╛ рд╣реИ)

рд▓реЗрдХрд┐рди рд╣рдо рдорд╛рддрд╛-рдкрд┐рддрд╛ рд╕реЗ рдмрдЪреНрдЪреЛрдВ рдХреЛ рдШрдЯрдХ рдЙрдкрд▓рдмреНрдз рдирд╣реАрдВ рдХрд░рд╛ рд╕рдХрддреЗ рд╣реИрдВред рд╡рд░реНрддрдорд╛рди vm рдЙрджрд╛рд╣рд░рдг рдФрд░ рдЗрд╕ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рд▓реЛрдб рдХрд┐рдП рдЧрдП рд╕рднреА рдШрдЯрдХреЛрдВ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢реНрд╡ рд╕реНрддрд░ рдкрд░ рдШрдЯрдХреЛрдВ рдХреЛ рдкрдВрдЬреАрдХреГрдд рдХрд░рдиреЗ рдЬреИрд╕рд╛ рдХреБрдЫ, рд▓реЗрдХрд┐рди рдЕрдиреНрдп vm рдЙрджрд╛рд╣рд░рдгреЛрдВ рдореЗрдВ рд▓реЛрдб рдХрд┐рдП рдЧрдП рдСрдореНрдкреЛрдиреЗрдВрдЯреНрд╕ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВред рдЙрджрд╛рд╣рд░рдг рджреЗрдЦреЗрдВ: https://jsfiddle.net/p8wqafm1/2/

рдХреНрдпрд╛ рддреБрдо рд╕рдордЭ рд░рд╣реЗ рд╣реЛ?

рдУрд╣, рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореЗрд░реА рдмреЗрд▓рд╛ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рд╕рд╣реЗрдЬреА рдирд╣реАрдВ рдЧрдИ рдереА..
рдпрд╣ рд╡рд╣реА рд╣реИ рдЬреЛ рдореИрдВ рдЖрдкрдХреЛ рджрд┐рдЦрд╛рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ ..
https://jsfiddle.net/fnlCtrl/32dt9e9g/1/

рдореИрдВ рдЕрднреА рдЖрдкрдХрд╛ рдЙрджрд╛рд╣рд░рдг рдкрдврд╝ рд░рд╣рд╛ рд╣реВрдВред

рдореИрдВрдиреЗ рдЖрдкрдХрд╛ рдЙрджрд╛рд╣рд░рдг рдпрд╣рд╛рдВ рдлреЛрд░реНрдХ рдХрд┐рдпрд╛ рд╣реИ рдЬреЛ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд╣реА рд╣реИ, рдореБрдЭреЗ рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдореИрдВ рдЖрдкрдХреЛ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рд╕рдордЭ рдЧрдпрд╛ рд╣реВрдВ:
рдЖрдк рдлреВ рдХреЗ рдЕрдВрджрд░ рд╕реАрдорд┐рдд рдЧрддрд┐рд╢реАрд▓ рдШрдЯрдХреЛрдВ рдХреЛ рдЬреЛрдбрд╝рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред

@fnlctrl рдЖрдкрдХреЗ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж рд▓реЗрдХрд┐рди рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕рдореЗрдВ рд╡рд╣ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рд╣реИ рдЬреЛ рдореИрдВ рдЕрднреА рддрдХ рд╣рд╛рд╕рд┐рд▓ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред

рдЖрдкрдХреЗ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреЗрд╡рд▓ Foo рдореЗрдВ рдШрдЯрдХ рдкрдВрдЬреАрдХреГрдд рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдЙрдиреНрд╣реЗрдВ Foo рдХреЗ рдмрдЪреНрдЪреЛрдВ ( рдЗрд╕ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ Bar ) рдореЗрдВ рдЙрдкрд▓рдмреНрдз рдирд╣реАрдВ рдХрд░рд╛рддрд╛ рд╣реИред

рдмреЗрд▓рд╛ рджреЗрдЦреЗрдВ, рдореИрдВ Baz рдХреЛ Foo $ рдореЗрдВ рдкрдВрдЬреАрдХреГрдд рдХрд░рддрд╛ рд╣реВрдВ рдФрд░ рдореИрдВ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХрд┐ рдпрд╣ Bar рдореЗрдВ рдЙрдкрд▓рдмреНрдз рд╣реЛ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ Foo рд╕реЗ рд▓реЛрдб рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ: https://jsfiddle .рдиреЗрдЯ/8y0Lmb01/3/

рдЕрдкрдирд╛ рдЙрджрд╛рд╣рд░рдг рдлреЛрд░реНрдХ рдХрд┐рдпрд╛: https://jsfiddle.net/fnlCtrl/uvzaotaz/

рдореБрджреНрджрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдШрдЯрдХреЛрдВ рдореЗрдВ рдПрдХ рд╕реНрдкрд╖реНрдЯ рдирд┐рд░реНрднрд░рддрд╛ рд╡реГрдХреНрд╖ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдФрд░ рдПрдХ рджреВрд╕рд░реЗ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдЧрддрд┐рд╢реАрд▓ рдШрдЯрдХ рдЕрдкрд╡рд╛рдж рдирд╣реАрдВ рд╣реЛрдиреЗ рдЪрд╛рд╣рд┐рдПред

@fnlctrl рдЖрдкрдХреЗ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ Baz $ рдЕрдм Foo рдореЗрдВ рдЙрдкрд▓рдмреНрдз рдирд╣реАрдВ рд╣реИред

рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореИрдВ Vue.component('baz', {...} рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддрд╛ рдерд╛ рд▓реЗрдХрд┐рди рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдпрд╣ рдЗрд╕ baz рдШрдЯрдХ рдХреЗ рд╕рд╛рде рдЕрдиреНрдп vue рдЙрджрд╛рд╣рд░рдг рдХреЛ "рдкреНрд░рджреВрд╖рд┐рдд" рдХрд░реЗрдЧрд╛ред

рдпрд╛

рдореИрдВ Baz рджреЛрдиреЛрдВ Foo рдФрд░ Bar , рдФрд░ рд╕рднреА рдлреВ рдмрдЪреНрдЪреЛрдВ, рдФрд░ рд╕рднреА рдмрд╛рд░ рдмрдЪреНрдЪреЛрдВ, рдФрд░ рд╕рднреА рдлреВ рдЧреНрд░реИрдВрдб рдЪрд┐рд▓реНрдбреНрд░рди, рдЖрджрд┐ рдореЗрдВ рдкрдВрдЬреАрдХреГрдд рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ ... рд▓реЗрдХрд┐рди рдпрд╣ рдПрдХ рдЬреЛрдбрд╝рддрд╛ рд╣реИ рдмрдбрд╝реЗ/рдЧрддрд┐рд╢реАрд▓ рдРрдк рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдмрд╣реБрдд рдЬрдЯрд┐рд▓рддрд╛

рдХреНрдпрд╛ рддреБрдордиреЗ рджреЗрдЦрд╛ рдХрд┐ рдореЗрд░рд╛ рдХреНрдпрд╛ рдорддрд▓рдм рд╣реИ? рдореИрдВ рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ рдкрдВрдЬреАрдХрд░рдг рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рд╣рдо рдореМрдЬреВрджрд╛ рдШрдЯрдХреЛрдВ _only_ рдХреЗ рдмрдЪреНрдЪреЛрдВ, рдкреЛрддреЗ-рдкреЛрддрд┐рдпреЛрдВ,... рдХреЗ рд▓рд┐рдП рдШрдЯрдХреЛрдВ рдХреЛ рдЗрдирд╣реЗрд░рд┐рдЯ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ

рд╣рд╛рдБ рдореИрдВ рдЕрдм рддреБрдореНрд╣рд╛рд░рд╛ рдмрд┐рдВрджреБ рджреЗрдЦрддрд╛ рд╣реВрдБред рдХреНрд╖рдорд╛ рдХрд░реЗрдВ рдХрд┐ рдореБрдЭреЗ рдкрддрд╛ рдирд╣реАрдВ рдерд╛ рдХрд┐ рдкрдВрдЬреАрдХрд░рдг
рдлреВ рдХреЗ рддрд╣рдд рдШрдЯрдХ рдЗрд╕реЗ рдлреВ рдХреЗ рджрд╛рдпрд░реЗ рдореЗрдВ рд╡реИрд╢реНрд╡рд┐рдХ рдирд╣реАрдВ рдмрдирд╛рддрд╛ рд╣реИ, рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд
рд╡реНрдпреВ.рдШрдЯрдХред рдпрд╣ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрд░реЛрдд рдореЗрдВ рджреЗрдЦреЗрдВрдЧреЗ рдХрд┐ рдХреНрдпреЛрдВред

рд╕реЛрдо, 22 рдЕрдЧрд╕реНрдд 2016 рдХреЛ, 20:17 рд╕реМрдлрд┐рдПрди рдЧрд╝рдЬрд╝рд▓ рдиреЛрдЯрд┐рдлрд┐рдХреЗрд╢рди @github.com рдиреЗ рд▓рд┐рдЦрд╛:

@fnlctrl https://github.com/fnlctrl рдЖрдкрдХреЗ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рдмрд╛рдЬ рдЙрдкрд▓рдмреНрдз рдирд╣реАрдВ рд╣реИ
рдлреВ рдореЗрдВ рдЕрдм рдФрд░ред

рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореИрдВ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддрд╛ рдерд╛ Vue.component('baz', {...} рд▓реЗрдХрд┐рди рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐
рдпрд╣ рдЗрд╕ baz рдШрдЯрдХ рдХреЗ рд╕рд╛рде рдЕрдиреНрдп Vue рдЙрджрд╛рд╣рд░рдг рдХреЛ "рдкреНрд░рджреВрд╖рд┐рдд" рдХрд░реЗрдЧрд╛ред

рдпрд╛

рдореИрдВ рдлреВ рдФрд░ рдмрд╛рд░, рдФрд░ рд╕рднреА рдлреВ рдмрдЪреНрдЪреЛрдВ рдореЗрдВ рдмрд╛рдЬ рдХреЛ рдкрдВрдЬреАрдХреГрдд рдХрд░ рд╕рдХрддрд╛ рдерд╛, рдФрд░
рд╕рднреА рдмрд╛рд░ рдмрдЪреНрдЪреЗ, рдФрд░ рд╕рднреА рдлреВ рдЧреНрд░реИрдВрдб рдЪрд┐рд▓реНрдбреНрд░рди, рдЖрджрд┐... рд▓реЗрдХрд┐рди рдпрд╣ рдмрд╣реБрдд рдХреБрдЫ рдЬреЛрдбрд╝рддрд╛ рд╣реИ
рдмрдбрд╝реЗ/рдЧрддрд┐рд╢реАрд▓ рдРрдк рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдЬрдЯрд┐рд▓рддрд╛

рдХреНрдпрд╛ рддреБрдордиреЗ рджреЗрдЦрд╛ рдХрд┐ рдореЗрд░рд╛ рдХреНрдпрд╛ рдорддрд▓рдм рд╣реИ? рдореИрдВ рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ рдкрдВрдЬреАрдХрд░рдг рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рд╣рдореЗрдВ рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рдирд╣реАрдВ рдорд┐рд▓ рд╕рдХрддрд╛
рд╡рд░реНрддрдорд╛рди рдШрдЯрдХреЛрдВ рдХреЗ рдмрдЪреНрдЪреЛрдВ, рдкреЛрддреЗ-рдкреЛрддрд┐рдпреЛрдВ,... рдХреЗ рд▓рд┐рдП рдШрдЯрдХ
_рдХреЗрд╡рд▓_

-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рд╕реАрдзреЗ рдЙрддреНрддрд░ рджреЗрдВ, рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ
https://github.com/vuejs/vue/issues/1297#issuecomment -241395119, рдпрд╛ рдореНрдпреВрдЯ рдХрд░реЗрдВ
рд╕реВрддреНрд░
https://github.com/notifications/unsubscribe-auth/AFTLl2ud0GDO_hOwFN8GIA1TzVEF1q0Fks5qiZM9gaJpZM4F7M1v
.

рдзрдиреНрдпрд╡рд╛рдж :)

рдореБрджреНрджрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдореИрдВ рдПрдХ рд╕реНрдЯреИрдВрдбрдЕрд▓реЛрди рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЛ рд╢рд┐рдк рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдЬреЛ рд╡реАрдпреВ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ, рдХрд┐рд╕реА рджрд┐рдП рдЧрдП рдЗрдВрд╕реНрдЯреЗрдВрд╕ рдХреЗ рд▓рд┐рдП рдШрдЯрдХреЛрдВ рдХреЛ рдкрдВрдЬреАрдХреГрдд рдХрд░рдирд╛ рдПрдХ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд▓рд╛рдн рд╣реЛрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рд╡реИрд╕реЗ рднреА, рдПрдХ рд╕реНрдЯреИрдВрдбрдЕрд▓реЛрди рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рд░реВрдк рдореЗрдВ, рдореБрдЭреЗ рдЗрд╕реЗ рд╡реИрд╢реНрд╡рд┐рдХ рд╡реАрдпреВ рдЗрдВрд╕реНрдЯреЗрдВрд╕ рдореЗрдВ рдкрдВрдЬреАрдХреГрдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рд╣реИ ( рдЬреЛ рд╕реНрдЯреИрдВрдбрдЕрд▓реЛрди рднрд╛рдЧ рдХреЛ рддреЛрдбрд╝ рджреЗрдЧрд╛)ред

рдХреГрдкрдпрд╛, рдореБрдЭреЗ рдмрддрд╛рдПрдВ рдХрд┐ рдХреНрдпрд╛ рдореИрдВ рдЬрд┐рд╕ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░ рд░рд╣рд╛ рдерд╛ рдЙрд╕реЗ Vue . рдореЗрдВ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ

рдЦреИрд░, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕рдХрд╛ рдХрд╛рд░рдг рдЗрддрдирд╛ рд╕реНрдкрд╖реНрдЯ рдерд╛ рдХрд┐ рдореИрдВ рдЗрд╕реЗ рдирдЬрд╝рд░рдЕрдВрджрд╛рдЬрд╝ рдХрд░ рджреЗрддрд╛ рдерд╛: рдореИрдВ рдирд╣реАрдВ рдерд╛
new Foo() рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ ...

рдореЗрд░реЗ рдШрд░ рдХреА рд╕рд╡рд╛рд░реА рдкрд░, 20 рдорд┐рдирдЯ рдореЗрдВ рдПрдХ рдмреЗрд▓рд╛ рдорд┐рд▓реЗрдЧрд╛ред

рд╕реЛрдо, 22 рдЕрдЧрд╕реНрдд 2016 рдХреЛ 20:27 хоЛщУДш┐Р[email protected] рдиреЗ рд▓рд┐рдЦрд╛:

рд╣рд╛рдБ рдореИрдВ рдЕрдм рддреБрдореНрд╣рд╛рд░рд╛ рдмрд┐рдВрджреБ рджреЗрдЦрддрд╛ рд╣реВрдБред рдХреНрд╖рдорд╛ рдХрд░реЗрдВ рдХрд┐ рдореБрдЭреЗ рдкрддрд╛ рдирд╣реАрдВ рдерд╛ рдХрд┐ рдкрдВрдЬреАрдХрд░рдг
рдлреВ рдХреЗ рддрд╣рдд рдШрдЯрдХ рдЗрд╕реЗ рдлреВ рдХреЗ рджрд╛рдпрд░реЗ рдореЗрдВ рд╡реИрд╢реНрд╡рд┐рдХ рдирд╣реАрдВ рдмрдирд╛рддрд╛ рд╣реИ, рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд
рд╡реНрдпреВ.рдШрдЯрдХред рдпрд╣ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрд░реЛрдд рдореЗрдВ рджреЗрдЦреЗрдВрдЧреЗ рдХрд┐ рдХреНрдпреЛрдВред

рд╕реЛрдо, рдЕрдЧрд╕реНрдд 22, 2016, 20:17 рдкрд░
рд▓рд┐рдЦрд╛ рдерд╛:

@fnlctrl https://github.com/fnlctrl рдЖрдк рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рдмрд╛рдЬ рдирд╣реАрдВ рд╣реИ
рдлреВ рдореЗрдВ рдЕрдм рдЙрдкрд▓рдмреНрдз рд╣реИред

рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореИрдВ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддрд╛ рдерд╛ Vue.component('baz', {...} рд▓реЗрдХрд┐рди рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐
рдпрд╣ рдЗрд╕ baz рдШрдЯрдХ рдХреЗ рд╕рд╛рде рдЕрдиреНрдп Vue рдЙрджрд╛рд╣рд░рдг рдХреЛ "рдкреНрд░рджреВрд╖рд┐рдд" рдХрд░реЗрдЧрд╛ред

рдпрд╛

рдореИрдВ рдлреВ рдФрд░ рдмрд╛рд░, рдФрд░ рд╕рднреА рдлреВ рдмрдЪреНрдЪреЛрдВ рдореЗрдВ рдмрд╛рдЬ рдХреЛ рдкрдВрдЬреАрдХреГрдд рдХрд░ рд╕рдХрддрд╛ рдерд╛, рдФрд░
рд╕рднреА рдмрд╛рд░ рдмрдЪреНрдЪреЗ, рдФрд░ рд╕рднреА рдлреВ рдЧреНрд░реИрдВрдб рдЪрд┐рд▓реНрдбреНрд░рди, рдЖрджрд┐... рд▓реЗрдХрд┐рди рдпрд╣ рдмрд╣реБрдд рдХреБрдЫ рдЬреЛрдбрд╝рддрд╛ рд╣реИ
рдмрдбрд╝реЗ/рдЧрддрд┐рд╢реАрд▓ рдРрдк рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдЬрдЯрд┐рд▓рддрд╛

рдХреНрдпрд╛ рддреБрдордиреЗ рджреЗрдЦрд╛ рдХрд┐ рдореЗрд░рд╛ рдХреНрдпрд╛ рдорддрд▓рдм рд╣реИ? рдореИрдВ рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ рдкрдВрдЬреАрдХрд░рдг рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рд╣рдореЗрдВ рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рдирд╣реАрдВ рдорд┐рд▓ рд╕рдХрддрд╛
рд╡рд░реНрддрдорд╛рди рдШрдЯрдХреЛрдВ рдХреЗ рдмрдЪреНрдЪреЛрдВ, рдкреЛрддреЗ-рдкреЛрддрд┐рдпреЛрдВ,... рдХреЗ рд▓рд┐рдП рдШрдЯрдХ
_рдХреЗрд╡рд▓_

-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рд╕реАрдзреЗ рдЙрддреНрддрд░ рджреЗрдВ, рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ
https://github.com/vuejs/vue/issues/1297#issuecomment -241395119, рдпрд╛ рдореНрдпреВрдЯ рдХрд░реЗрдВ
рд╕реВрддреНрд░
https://github.com/notifications/unsubscribe-auth/AFTLl2ud0GDO_hOwFN8GIA1TzVEF1q0Fks5qiZM9gaJpZM4F7M1v
.

рдЦреИрд░, new Foo(...) рдиреЗ рднреА рдХрд╛рдо рдирд╣реАрдВ рдХрд┐рдпрд╛: https://jsfiddle.net/8y0Lmb01/5/

рд╡рд╛рдХрдИ рдЕрдЬреАрдм рд╣реИ... https://jsfiddle.net/fnlCtrl/p0ggkncu/
рдЕрдм рдЗрд╕рдореЗрдВ рджреЗрдЦ рд░рд╣реЗ рд╣реИрдВред

рдореИрдВрдиреЗ рдХреБрдЫ рд╕реНрд░реЛрдд рдХреЛрдб рдкрдврд╝реЗ рд╣реИрдВ, рдФрд░ рдкрд╛рдпрд╛ рдХрд┐ Vue рдкрд░ рд╣реА, рд╣рдо рдЗрд╕ рддрд░рд╣ рд╣реИрдХ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
https://jsfiddle.net/fnlCtrl/522aw9sm/
(Vue.extend рдпрд╛ Vue.component рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдмрд┐рдирд╛, btw Vue.component рдХреЗрд╡рд▓ рдПрдХ рд╕рд╣рд╛рдпрдХ рдХрд╛рд░реНрдп рд╣реИ рдЬреЛ Vue.extend рдХрд░рддрд╛ рд╣реИ рдФрд░ Vue.options.components рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рддрд╛ рд╣реИ)

рд╣рд╛рд▓рд╛рдВрдХрд┐ рдПрдХ рд╣реА рджреГрд╖реНрдЯрд┐рдХреЛрдг рдПрдХ рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд Vue рдкрд░ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ:
https://jsfiddle.net/fnlCtrl/v1m2s16u/

рддреЛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕рдорд╕реНрдпрд╛ рдШрдЯрдХ рд╕рдВрдХрд▓реНрдк рдХреЗ рдХрд╛рд░рдг рд╣реЛрддреА рд╣реИред рдореИрдВ рджреЗрдЦрддрд╛ рд░рд╣реВрдБрдЧрд╛ред

@fnlctrl рдареАрдХ рд╣реИ рдзрдиреНрдпрд╡рд╛рдж, рдореИрдВрдиреЗ рдХреБрдЫ рдЪреАрдЬреЛрдВ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рдФрд░ рдЖрдкрдХреЗ рдЬреИрд╕реЗ рд╣реА рдирд┐рд╖реНрдХрд░реНрд╖ рдкрд░ рдЖрдпрд╛ред рдореИрдВ рдпрд╣ рдЬрд╛рдирдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рдХреЛрд░ рдирд╣реАрдВ рдЬрд╛рдирддрд╛ рдХрд┐ рдпрд╣ рдЗрд╕ рддрд░рд╣ рдХреНрдпреЛрдВ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдХреНрдпрд╛ рд╣рдо рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рдХреНрдпрд╛ рдпрд╣ рдЕрдкреЗрдХреНрд╖рд┐рдд рд╡реНрдпрд╡рд╣рд╛рд░ рд╣реИ?

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпреЗ рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдВ resolveAsset . рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣реИрдВ

рдПрдХ рд╕рдВрдкрддреНрддрд┐ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдХрд░реЗрдВред
рдЗрд╕ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдЗрд╕рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЪрд╛рдЗрд▓реНрдб рдЗрдВрд╕реНрдЯреЗрдВрд╕ рдХреЛ рдПрдХреНрд╕реЗрд╕ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ
рдЕрдкрдиреА рдкреВрд░реНрд╡рдЬ рд╢реНрд░реГрдВрдЦрд▓рд╛ рдореЗрдВ рдкрд░рд┐рднрд╛рд╖рд┐рдд рд╕рдВрдкрддреНрддрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдПред

рд╕реБрдЭрд╛рд╡ рджреЗрддрд╛ рд╣реИ рдХрд┐ рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд Vue рдкрд░ рдШрдЯрдХреЛрдВ рдХреЛ рдкрдВрдЬреАрдХреГрдд рдХрд░рдирд╛ рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдлрд╝рдВрдХреНрд╢рди рдмреЙрдбреА рдореЗрдВ рдХреЛрдб рдкреВрд░реНрд╡рдЬреЛрдВ рдХреА рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХреЛ рдирд╣реАрдВ рджреЗрдЦрддрд╛ рд╣реИ, рд╣реИ рдирд╛? рд╢рд╛рдпрдж рдЗрд╕реЗ рдЕрднреА рддрдХ рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛?

рдореИрдВ рдЕрднреА рддрдХ рдкрд░реНрдпрд╛рдкреНрдд рдирд╣реАрдВ рдЬрд╛рдирддрд╛, рдЕрднреА рднреА рдЗрд╕рдХреЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рд╕реАрдЦ рд░рд╣рд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ "рдкреВрд░реНрд╡рдЬ рд╢реНрд░реГрдВрдЦрд▓рд╛" рдкрд╣рд▓реЗ рдкреИрд░рд╛рдореАрдЯрд░ options рдХреЛ рд╕рдВрджрд░реНрднрд┐рдд рдХрд░рддреА рд╣реИред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореИрдВ рдпрд╣ рдирд┐рд╖реНрдХрд░реНрд╖ рдирд┐рдХрд╛рд▓ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ рдЗрд╕рдХрд╛ рдХрд╛рд░рдг рдпрд╣ рд╣реИ (src/core/global-api/extend) ред
рдпрд╣ рд╡рд┐рд╕реНрддрд╛рд░рд┐рдд рдХрдХреНрд╖рд╛рдУрдВ рдХреЛ рдЕрдкрдиреЗ рдорд╛рддрд╛-рдкрд┐рддрд╛ рдХреА рд╕рдорд╛рди рдкрджреНрдзрддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред

рдореИрдВрдиреЗ рдЗрд╕рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рд╣реИ, рдпрджрд┐ рдЖрдк рдХреЛрд░/рд╡реИрд╢реНрд╡рд┐рдХ-рдПрдкреАрдЖрдИ/рдкрд░рд┐рд╕рдВрдкрддреНрддрд┐рдпреЛрдВ рдореЗрдВ рдХреНрдпрд╛ рдХреЙрдкреА рдХрд░рддреЗ рд╣реИрдВ (рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдкреНрд░рдХрд╛рд░ рдХреЗ рдЫреАрди рд▓рд┐рдП рдЧрдП рдбрд┐рд╕реНрдЯ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рдЕрдВрджрд░ рд╕рдВрдмрдВрдзрд┐рдд рдХреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ)
vue.extend рдкрд░, рдЗрд╕реЗ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП ( Vue рд╕реЗ Sub рдмрджрд▓реЗрдВ):

config._assetTypes.forEach(function (type) {
        Sub[type] = function (id, definition) {
          if (!definition) {
            return this.options[type + 's'][id];
          } else {
            /* istanbul ignore if */
            if ("development" !== 'production') {
              if (type === 'component' && config.isReservedTag(id)) {
                warn('Do not use built-in or reserved HTML elements as component ' + 'id: ' + id);
              }
            }
            if (type === 'component' && isPlainObject(definition)) {
              definition.name = definition.name || id;
              definition = Sub.extend(definition);
            }
            if (type === 'directive' && typeof definition === 'function') {
              definition = { bind: definition, update: definition };
            }
            this.options[type + 's'][id] = definition;
            return definition;
          }
        };
      });

Foo = Vue.extend() рдФрд░ Foo.component() рдХрд╛рдо рдХрд░реЗрдВрдЧреЗред

рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕рд╕реЗ рдХреБрдЫ рдкреНрд░рджрд░реНрд╢рди рдЬреБрд░реНрдорд╛рдирд╛ рд╣реЛрдЧрд╛ред

@gsouf рдФрд░ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореБрдЭреЗ рдкрд╣реЗрд▓реА рдХрд╛ рдЖрдЦрд┐рд░реА рдЯреБрдХрдбрд╝рд╛ рдорд┐рд▓ рдЧрдпрд╛ рд╣реИ (vue рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд┐рдП рдмрд┐рдирд╛ рд╕рдордХрдХреНрд╖ рдХрд╛рдордХрд╛рдЬ):
https://jsfiddle.net/fnlCtrl/v1m2s16u/

var Root = Vue.extend()

Root.options.components.Foo = Root.extend({
    template: '<div>Foo</div>'
})

Root.options.components.Bar = Root.extend({
    template: '<div>Bar, uses <foo></foo></div>'
})

new Root({
    template: `
  <div>
    <foo></foo>
    <bar></bar>
  </div>
  `
}).$mount('#app')

рд╣рд╛рдп @fnlctrl , рдЖрдЙрдЯрдкреБрдЯ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж рдФрд░ рджреЗрд░реА рдХреЗ рд▓рд┐рдП рдЦреЗрдж рд╣реИред

рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдХреЙрдореНрдкреЛрдиреЗрдВрдЯреНрд╕ рдЙрдирдХреЗ рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░ рд╕реЗ рдШрдЯрдХреЛрдВ рдХреЛ рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рд▓реЗрддреЗ рд╣реИрдВ, рди рдХрд┐ рдорд╛рддрд╛-рдкрд┐рддрд╛ рд╕реЗред рд╡рд░реНрддрдорд╛рди рдореЗрдВ рджреЗрдЦ рд░рд╣рд╛ рд╣реВрдВ рдХрд┐ рдХреНрдпрд╛ рдореИрдВ рдЕрдкрдиреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдкреИрдЪ рд▓рдЧрд╛ рд╕рдХрддрд╛ рд╣реВрдВред

рдЖрдкрдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдпрд╣ рдПрдХ рдХрдВрд╕реНрдЯреНрд░рдХреНрдЯрд░ рд╕реЗ рдЬреБрдбрд╝рд╛ рд░рд╣рддрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ, рдореИрдВ рдЗрд╕реЗ рдХреЗрд╡рд▓ рдЗрдВрд╕реНрдЯреЗрдВрд╕ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рдмрдирдиреЗ рдХреА рддрд▓рд╛рд╢ рдореЗрдВ рд╣реВрдВ

рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЗ рдХреЗ рдХрд╛рд░рдг @fnlctrl рдФрд░ рдЖрдкрдХреЗ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рдореИрдВ рдЕрдкрдиреЗ рджреНрд╡рд╛рд░рд╛ рдмрдирд╛рдП рдЧрдП рдкреНрд░рддреНрдпреЗрдХ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП "рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ рд╡рд┐рд╕реНрддрд╛рд░" рдХрд░рдХреЗ рдЗрд╕реЗ рд╣рд▓ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ, рдЬрд┐рд╕рд╕реЗ рдХреЗрд╡рд▓ рдЗрд╕ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рд▓рд┐рдП рд╕рдм рдХреБрдЫ рдЙрдкрд▓рдмреНрдз рд╣реЛ рд╕рдХреЗред

createVueInstance = function(el, data){
    var vExtend = Vue.extend();
    vExtend.partial('some-semiglobal-partial', "...");
    vExtend.component('some-semiglobal-component', vExtend.extend({...}));

    return new vExtend({
        el: el,
        data: data
    });
};

рдпрд╣ рдЬрд╛рдВрдЪрдиреЗ рдХреЗ рдмрд╛рдж рдХрд┐ рдХреЛрд░ рдХреИрд╕реЗ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛, рдРрд╕рд╛ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдЗрд╕реЗ рдкреНрд░рддрд┐ рдЙрджрд╛рд╣рд░рдг рдЙрдкрд▓рдмреНрдз рдШрдЯрдХреЛрдВ рдХреЗ рдЖрд╕рд╛рди рдПрдХреАрдХрд░рдг рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ рдФрд░ рдпрд╣ рд╕рдорд╛рдзрд╛рди рдореЗрд░реЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╕реНрдерд┐рд░ рд╣реИред

рдЖрдкрдХреА рд╕рд╣рд╛рдпрддрд╛рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж!

рдмреАрдЯреАрдбрдмреНрд▓реНрдпреВ, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдиреЗ рдореБрдЭреЗ рдЬреЛ рдЙрджрд╛рд╣рд░рдг рджрд┐рдЦрд╛рдпрд╛ рд╣реИ рдЙрд╕реЗ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдореЗрдВ рдЧрд╣рд░рд╛рдИ рд╕реЗ рд╕рдордЭрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдореБрдЭреЗ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреЛрдИ рдЙрд▓реНрд▓реЗрдЦ рдирд╣реАрдВ рдорд┐рд▓рд╛

@gsouf рдЖрдкрдХрд╛ рд╕реНрд╡рд╛рдЧрдд рд╣реИред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдореБрджреНрджрд╛ рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИ рдЬреЛ рдПрдХ рд╕рдорд╛рди рд╕реБрд╡рд┐рдзрд╛ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ: рдореБрд╕реНрдХрд╛рди:

рдпрд╣рд╛рдВ рдореЗрд░реЗ рдкрд╛рд╕ 'рдЕрд░реНрдз-рд╡реИрд╢реНрд╡рд┐рдХ' рдЙрдкрдпреЛрдЧ рдХрд╛ рдорд╛рдорд▓рд╛ рд╣реИ:

рдореЗрд░реЗ рдкрд╛рд╕ рдЕрдкреЗрдХреНрд╖рд╛рдХреГрдд рд╕рд╛рд░реНрд╡рднреМрдорд┐рдХ рд▓реЗрдЖрдЙрдЯ рдШрдЯрдХ рд╣реИ, рд▓реЗрдХрд┐рди рд╕рд╛рдордЧреНрд░реА рдЙрди рдШрдЯрдХреЛрдВ рджреНрд╡рд╛рд░рд╛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдпреЛрдЧреНрдп рд╣реИ рдЬреЛ рд▓реЗрдЖрдЙрдЯ рдШрдЯрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдПред рдШрдЯрдХ рдП рд▓реЗрдЖрдЙрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдШрдЯрдХ рдмреА рдХреЗ рд╕рд╛рде рдЕрдкрдиреА рд╕рд╛рдордЧреНрд░реА рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИ, рдХреБрдЫ рдЕрдиреНрдп рдШрдЯрдХ рд▓реЗрдЖрдЙрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдШрдЯрдХ рд╕реА рдХреЗ рд╕рд╛рде рдЗрд╕рдХреА рд╕рд╛рдордЧреНрд░реА рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЖрджрд┐ред

рдХреНрдпрд╛ рдЗрд╕ рдкреИрдЯрд░реНрди рдХрд╛ рд╕рдорд░реНрдерди рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП?

рдпрд╛ рдХреНрдпрд╛ рдЗрд╕ рдбрд┐рдЬрд╝рд╛рдЗрди рдХреЛ рдмрджрд▓рдиреЗ рдХрд╛ рдХреЛрдИ рд╕рдорд╛рдзрд╛рди рд╣реИ?

рдХреЛрдб рдХреЗ рдкреБрди: рдЙрдкрдпреЛрдЧ рдХреЛ рдмреЗрд╣рддрд░ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП iOS рдореЗрдВ рдкреИрдЯрд░реНрди рдХрд╛ рд╡реНрдпрд╛рдкрдХ рд░реВрдк рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдпрд╣ рдПрдХ рд▓рдЪреАрд▓рд╛ рдбрд┐рдЬрд╝рд╛рдЗрди рд╣реИред

@hpsoar рд╢рд╛рдпрдж рдЖрдкрдХреЛ рдЬреЛ рдЪрд╛рд╣рд┐рдП рд╡рд╣ рд╣реИ рд╕реНрд▓реЙрдЯ

рдореЗрд░рд╛ рдбрд┐рдЬрд╝рд╛рдЗрди рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╣реИ, рдореВрд▓ рд░реВрдк рд╕реЗ рдпрд╣ рдореБрдЭреЗ рд╕реЗрд▓ рдХреЗ рд╕рд╛рде рджреЛ рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдЧрд╛:

  1. рдПрдХ рд╕реАрдПрд╕рдПрд╕ рд╢реИрд▓реА рдХреЗ рд╕рд╛рде рд╕реЗрд▓ рдХреЛ рд╕рд░рд▓ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВ, рдЬреЛ рдХрдИ рдорд╛рдорд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реЛрдЧрд╛;
  2. рд╕реЗрд▓ рдореЗрдВ рдПрдХ рдШрдЯрдХ рдбрд╛рд▓реЗрдВ, рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рд╡рд┐рд╢реЗрд╖ рдорд╛рдорд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред
<template>
  <div class="tile is-ancestor">
    <div class="tile is-parent">
      <article class="tile is-child box">
        <div class="table-responsive">
          <table class="table is-bordered is-striped is-narrow">
            <thead>
            <tr>
              <th v-for="c in columns">
                {{c.title}}
              </th>
            </tr>
            </thead>
            <tbody>
            <tr v-for="(item, index) in items">
              <template v-for="c in columns">
                <td v-if="c.hasOwnProperty('component')"><div :is="c.component"></div></td>
                <td v-else>{{ item[c.name] }}</td>
              </template>
            </tr>
            </tbody>
          </table>
        </div>
      </article>
    </div>
  </div>
</template>

<script>

export default {
  components: {
  },
  props: [
    'columns',
    'items'
  ],
  data: function () {
    return {
    }
  }
}

</script>

<style lang="scss" rel="stylesheet/scss">
  .table-responsive {
    display: block;
    width: 100%;
    min-height: .01%;
    overflow-x: auto;
  }
</style>

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

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

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

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

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

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

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