Polymer: рдЧрдгрдирд╛ рдХреА рдЧрдИ рд╕рдВрдкрддреНрддрд┐ рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХреИрд╕реЗ рдХрд░реЗрдВ?

рдХреЛ рдирд┐рд░реНрдорд┐рдд 5 рджрд┐рд╕ре░ 2017  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: Polymer/polymer

рд╡рд┐рд╡рд░рдг

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

рд▓рд╛рдЗрд╡ рдбреЗрдореЛ

рдпрд╣рд╛рдБ рдПрдХ рдЯреБрдХрдбрд╝рд╛ рдЬрд╣рд╛рдВ рдорд╛рддрд╛ рдкрд┐рддрд╛ рд╡рд░реНрдЧ рд╣реИ A рдЧрдгрдирд╛ рдХрд░рддрд╛ рд╣реИ result рд╕рдВрдкрддреНрддрд┐ рдХреЗ рдмрд░рд╛рдмрд░ рд╣реЛрдирд╛ value рд╕рдВрдкрддреНрддрд┐, рдЕрдкрдиреЗ рдмрдЪреНрдЪреЗ рдХреЛ рдХрдХреНрд╖рд╛ рдЬрдмрдХрд┐ B рдкрд░рд┐рдгрд╛рдо рдХреА рдЧрдгрдирд╛ рдлрд┐рд░ рд╕реЗ рд╣реЛрдЧрд╛ рд╕рдВрдкрддреНрддрд┐ value + value2 рдмрд░рд╛рдмрд░ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред
рд▓реЗрдХрд┐рди рдУрд╡рд░рд░рд╛рдЗрдб рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛...
http://jsbin.com/hoqeyucize/1/edit?html ,js,output

рдпрд╣рд╛рдВ рд╕реНрдЯреИрдХ рдУрд╡рд░рдлреНрд▓реЛ рд╣реИ ред

рдЕрдкреЗрдХреНрд╖рд┐рдд рдкрд░рд┐рдгрд╛рдо

рдмрд╛рд▓ рд╡рд░реНрдЧ рдХреЗ рд░реВрдк рдореЗрдВ рдЧрдгрдирд╛ рдХреА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рдЧрдгрдирд╛ рдХреА рдЧрдИ рд╕рдВрдкрддреНрддрд┐ рдХрдВрдкреНрдпреВрдЯ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдлрд┐рд░ рд╕реЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддреА рд╣реИред

рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкрд░рд┐рдгрд╛рдо

рдЧрдгрдирд╛ рдХреА рдЧрдИ рд╕рдВрдкрддреНрддрд┐ рдХреА рдЧрдгрдирд╛ рдореВрд▓ рд╡рд░реНрдЧ рджреНрд╡рд╛рд░рд╛ рдЧрдгрдирд╛ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рд░реВрдк рдореЗрдВ рдХреА рдЬрд╛рддреА рд╣реИ, рдФрд░ рдЗрд╕реЗ рдУрд╡рд░рд░рд╛рдЗрдб рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рд╕рдВрд╕реНрдХрд░рдгреЛрдВ

  • рдкреЙрд▓рд┐рдорд░: v2.0.0
  • рд╡реЗрдм рдШрдЯрдХ: v1.0.20

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

рдореБрдЦреНрдп рдХрд╛рд░рдг рд╣реИ: рдмрд╣реБрд░реВрдкрддрд╛

рдореЗрд░рд╛ рдЙрдкрдпреЛрдЧ рдорд╛рдорд▓рд╛ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╣реИ:
рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рдЕрдореВрд░реНрдд рдШрдЯрдХ рд╣реИ Input ред рдЗрд╕ рдШрдЯрдХ рдореЗрдВ 3 рдореБрдЦреНрдп рдЧреБрдг рд╣реИрдВ:

 {
      /**
        * The current value of the input. It can be anything, string, number, object, array..
        */
      value : {},

      /**
        * Indicates if a value is required in the input to be valid.
        */
      required : {
             type : Boolean,
             value : false,
      }

      /**
        * Indicates if the value property is currently valid.
        */
      valid : {
             type : Boolean,
             computed : "isValid(value, required)"
      }
 }

valid рдЧреБрдг рдХреА рдЧрдгрдирд╛ isValid рдлрд╝рдВрдХреНрд╢рди рджреНрд╡рд╛рд░рд╛ рдХреА рдЬрд╛рддреА рд╣реИред рдЗрд╕рдХрд╛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдмрд╕ рд╣реИ:
return !this.required || !!this.value рд▓реЗрдХрд┐рди рдпрд╣ рдХреЗрд╡рд▓ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╣реИред

рдЕрдм рдорд╛рди рд▓реЗрдВ рдХрд┐ рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рдЪрд╛рдЗрд▓реНрдб рдЗрдирдкреБрдЯ рдШрдЯрдХ рд╣реИ, рдЬреЛ рдЕрдореВрд░реНрдд Input рдШрдЯрдХ рд╕реЗ рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рдорд┐рд▓рд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕рдХреА valid рд╕рдВрдкрддреНрддрд┐ рдХреА рдЧрдгрдирд╛ рддреАрд╕рд░реЗ рдирд┐рд░реНрднрд░рддрд╛ рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рд╕рд╛рде рдХреА рдЬрд╛рдиреА рдЪрд╛рд╣рд┐рдПред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдореЗрд░реЗ рдЗрдирдкреБрдЯ рдХрд╛ рдореВрд▓реНрдп Array , рдФрд░ рдЗрдирдкреБрдЯ рддрднреА рдорд╛рдиреНрдп рд╣реЛрдЧрд╛ рдЬрдм рдРрд░реЗ рдХреЗ рдЕрдВрджрд░ рдХрдо рд╕реЗ рдХрдо рдПрдХ рдЖрдЗрдЯрдо рд╣реЛред рдлрд┐рд░ рдореБрдЭреЗ рдЕрдкрдиреЗ рдлрд╝рдВрдХреНрд╢рди isValid(value, requires, value.length) (рдпрд╛ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛтАЛтАЛрдХрд┐ isValid(value, requires, value.splices) рдЕрдЧрд░ рдореБрдЭреЗ рдЕрдкрдиреЗ рд╕рд░рдгреА рдорд╛рди рдХреА рд╕рд╛рдордЧреНрд░реА рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ) рдкрд░ рддреАрд╕рд░реА рдирд┐рд░реНрднрд░рддрд╛ рдЬреЛрдбрд╝рдиреА рд╣реЛрдЧреАред
рдЗрд╕ рддрд░рд╣ рдХреЗ рдорд╛рдорд▓реЛрдВ рдореЗрдВ (рдРрд╕реЗ рдХрдИ рдорд╛рдорд▓реЗ рд╣реИрдВ рдЬрд╣рд╛рдВ рдорд╛рддрд╛-рдкрд┐рддрд╛ рдХрд╛ рдЧрдгрдирд╛ рдХрд╛рд░реНрдп рдХреЗрд╡рд▓ рдПрдХ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╣реИ), рдореБрдЭреЗ рдирд┐рд░реНрднрд░рддрд╛ рдкреИрд░рд╛рдореАрдЯрд░ рдЬреЛрдбрд╝рдиреЗ/рдирд┐рдХрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП, рдпрд╛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рдВрдкрддреНрддрд┐ рдХреА рдЧрдгрдирд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЧрдгрдирд╛ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдЕрд▓рдЧ рддрд░реАрдХрд╛ред

рдЕрдм рдХрд┐рд╕реА рдЕрдиреНрдп рд╕рдВрдкрддреНрддрд┐ рдХреА рдЧрдгрдирд╛ рдХрд░рдиреЗ рдХрд╛ рдХрд╛рд░рдг рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╣рдо рдмрд╣реБрд░реВрдкрддрд╛ рдЦреЛ рджреЗрддреЗ рд╣реИрдВред
рдЖрдЗрдП рдЕрдкрдиреЗ рд╕рд╛рд░ рдЗрдирдкреБрдЯ рдШрдЯрдХ рдХреЛ рд╡рд╛рдкрд╕ рд▓реЗрдВред рдЕрдм рдЬрдм рдЗрд╕рдХреА рдЧрдгрдирд╛ рдХреА рдЧрдИ рд╕рдВрдкрддреНрддрд┐ valid , рддреЛ рдСрдЯреЛ-рдлреЙрд░реНрдо рдХреА рддрд░рд╣ рдПрдХ рдФрд░ рдШрдЯрдХ рдмрдирд╛рдирд╛ рд╕рдВрднрд╡ рд╣реИ, рдЬреЛ auto-form.validate() рдкрд░ рдХреЙрд▓ рдХрд░рдиреЗ рдкрд░, рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдбреЛрдо рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╕рднреА рдЗрдирдкреБрдЯ рдШрдЯрдХ рдХреЛ рдкрд╛рд░ рдХрд░ рдЬрд╛рдПрдЧрд╛ , рдФрд░ рдЙрдирдХреА valid рд╕рдВрдкрддреНрддрд┐рдпреЛрдВ рдХреА рдЬрд╛рдВрдЪ рдХрд░реЗрдВред
рдореИрдВ рдПрдХ рд╕рдВрдкрддреНрддрд┐ рдХреЛ рд╕реАрдзреЗ рдкрдврд╝рдиреЗ рдХреЗ рдмрдЬрд╛рдп validate() рдлрд╝рдВрдХреНрд╢рди рдЪрд▓рд╛рдиреЗ рд╕реЗ рдмрдЪрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ, рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕реЗ рдкреНрд░рддреНрдпреЗрдХ Input рдШрдЯрдХ рдкрд░ рдХреЙрд▓ рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдФрд░ рдЗрд╕рдореЗрдВ рдЬрд┐рддрдиреЗ рдЕрдзрд┐рдХ рдЗрдирдкреБрдЯ рд╣реЛрдВрдЧреЗ, рдФрд░ рдЙрддрдирд╛ рд╣реА рдЕрдзрд┐рдХ рд╡реЗ рдЬрдЯрд┐рд▓ рд╣реИрдВ, рдЬрд┐рддрдиреА рдЕрдзрд┐рдХ рд╡рд┐рд▓рдВрдмрддрд╛ рд╣реЛрдЧреАред

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

рдореБрдЭреЗ рдпрд╣ рдЬрд╛рдирдиреЗ рдХреА рдЙрддреНрд╕реБрдХрддрд╛ рд╣реИ рдХрд┐ рдЧрдгрдирд╛ рдХреА рдЧрдИ рд╕рдВрдкрддреНрддрд┐ рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХреНрдпреЛрдВ рдХрд░реЗрдВ?

рдЖрдИрдПрдордПрдЪрдУ, рдПрдХ рдЧрдгрдирд╛ рдХреА рдЧрдИ рд╕рдВрдкрддреНрддрд┐ рдХреА рдЧрдгрдирд╛ рдПрдХ рддрддреНрд╡ рджреНрд╡рд╛рд░рд╛ рдХреА рдЬрд╛рддреА рд╣реИ рдФрд░ рдпрд╣ рдореБрдЭрд╕реЗ рдмреЗрд╣рддрд░ рдЬрд╛рдирддрд╛ рд╣реИ рдХрд┐ рдЗрд╕рдХреА рдЧрдгрдирд╛ рдХреИрд╕реЗ рдХрд░реЗрдВ (рдпрд╛ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдмрдЧ рд╣реИ)ред рдЗрд╕рд▓рд┐рдП, рдЬрдм рдореИрдВ рддрддреНрд╡ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░рддрд╛ рд╣реВрдВ рдФрд░ рдмрдЪреНрдЪреЗ рдХреЗ рдкрд╛рд╕ рдПрдХ рдЧрдгрдирд╛ рдХреА рдЧрдИ рд╕рдВрдкрддреНрддрд┐ рднреА рд╣реЛрддреА рд╣реИ, рддреЛ рдЗрд╕рдХрд╛ рдмрд┐рд▓реНрдХреБрд▓ рд╡рд╣реА рдореВрд▓реНрдп рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдХреБрдЫ рдЬреНрдпрд╛рджрд╛ рд╣реИ рдпрд╛ рдХреБрдЫ рдХрдоред рдХреНрдпреЛрдВ рди рд╕рд┐рд░реНрдл рдПрдХ рдЕрдиреНрдп рд╕рдВрдкрддреНрддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ?

рдореИрдВ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪ рд░рд╣рд╛ рд╣реВрдВ рдХрд┐ рдХреНрдпрд╛ рдореИрдВ _your-super-element_ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдЬреЛ _super-element_ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдореИрдВ _your-super-element_ рдХреЗ рдорд╛рддрд╛-рдкрд┐рддрд╛ рдХреА рдЧрдгрдирд╛ рдХреА рдЧрдИ рд╕рдВрдкрддреНрддрд┐ (рдЬрд┐рд╕реЗ рдЖрдкрдиреЗ рдУрд╡рд░рд░рд╛рдЗрдЯ рдХрд┐рдпрд╛ рд╣реИ) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред рдХреНрдпрд╛ рдореБрдЭреЗ рдЗрд╕реЗ рдлрд┐рд░ рд╕реЗ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдпрд╛ рд╕реАрдзреЗ _super-element_ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рдЖрдкрдХреЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рдлрд┐рд░ рд╕реЗ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП? рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдХреЛрдИ рдкреИрдЯрд░реНрди рдпрд╛ рдХреБрдЫ рдРрд╕рд╛ рд╣реЛ рдЬреЛ рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ред

рд╕рд┐рджреНрдзрд╛рдВрдд рд░реВрдк рдореЗрдВ рдореИрдВ рд╕рд╣рдордд рд╣реВрдВ, рдмрдЪреНрдЪреЗ рдХреЛ рдорд╛рддрд╛-рдкрд┐рддрд╛ рдХреА рдкрд░рд┐рднрд╛рд╖рд╛рдУрдВ рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдореБрдЦреНрдп рдХрд╛рд░рдг рд╣реИ: рдмрд╣реБрд░реВрдкрддрд╛

рдореЗрд░рд╛ рдЙрдкрдпреЛрдЧ рдорд╛рдорд▓рд╛ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╣реИ:
рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рдЕрдореВрд░реНрдд рдШрдЯрдХ рд╣реИ Input ред рдЗрд╕ рдШрдЯрдХ рдореЗрдВ 3 рдореБрдЦреНрдп рдЧреБрдг рд╣реИрдВ:

 {
      /**
        * The current value of the input. It can be anything, string, number, object, array..
        */
      value : {},

      /**
        * Indicates if a value is required in the input to be valid.
        */
      required : {
             type : Boolean,
             value : false,
      }

      /**
        * Indicates if the value property is currently valid.
        */
      valid : {
             type : Boolean,
             computed : "isValid(value, required)"
      }
 }

valid рдЧреБрдг рдХреА рдЧрдгрдирд╛ isValid рдлрд╝рдВрдХреНрд╢рди рджреНрд╡рд╛рд░рд╛ рдХреА рдЬрд╛рддреА рд╣реИред рдЗрд╕рдХрд╛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдмрд╕ рд╣реИ:
return !this.required || !!this.value рд▓реЗрдХрд┐рди рдпрд╣ рдХреЗрд╡рд▓ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╣реИред

рдЕрдм рдорд╛рди рд▓реЗрдВ рдХрд┐ рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рдЪрд╛рдЗрд▓реНрдб рдЗрдирдкреБрдЯ рдШрдЯрдХ рд╣реИ, рдЬреЛ рдЕрдореВрд░реНрдд Input рдШрдЯрдХ рд╕реЗ рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рдорд┐рд▓рд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕рдХреА valid рд╕рдВрдкрддреНрддрд┐ рдХреА рдЧрдгрдирд╛ рддреАрд╕рд░реЗ рдирд┐рд░реНрднрд░рддрд╛ рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рд╕рд╛рде рдХреА рдЬрд╛рдиреА рдЪрд╛рд╣рд┐рдПред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдореЗрд░реЗ рдЗрдирдкреБрдЯ рдХрд╛ рдореВрд▓реНрдп Array , рдФрд░ рдЗрдирдкреБрдЯ рддрднреА рдорд╛рдиреНрдп рд╣реЛрдЧрд╛ рдЬрдм рдРрд░реЗ рдХреЗ рдЕрдВрджрд░ рдХрдо рд╕реЗ рдХрдо рдПрдХ рдЖрдЗрдЯрдо рд╣реЛред рдлрд┐рд░ рдореБрдЭреЗ рдЕрдкрдиреЗ рдлрд╝рдВрдХреНрд╢рди isValid(value, requires, value.length) (рдпрд╛ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛтАЛтАЛрдХрд┐ isValid(value, requires, value.splices) рдЕрдЧрд░ рдореБрдЭреЗ рдЕрдкрдиреЗ рд╕рд░рдгреА рдорд╛рди рдХреА рд╕рд╛рдордЧреНрд░реА рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ) рдкрд░ рддреАрд╕рд░реА рдирд┐рд░реНрднрд░рддрд╛ рдЬреЛрдбрд╝рдиреА рд╣реЛрдЧреАред
рдЗрд╕ рддрд░рд╣ рдХреЗ рдорд╛рдорд▓реЛрдВ рдореЗрдВ (рдРрд╕реЗ рдХрдИ рдорд╛рдорд▓реЗ рд╣реИрдВ рдЬрд╣рд╛рдВ рдорд╛рддрд╛-рдкрд┐рддрд╛ рдХрд╛ рдЧрдгрдирд╛ рдХрд╛рд░реНрдп рдХреЗрд╡рд▓ рдПрдХ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╣реИ), рдореБрдЭреЗ рдирд┐рд░реНрднрд░рддрд╛ рдкреИрд░рд╛рдореАрдЯрд░ рдЬреЛрдбрд╝рдиреЗ/рдирд┐рдХрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП, рдпрд╛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рдВрдкрддреНрддрд┐ рдХреА рдЧрдгрдирд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЧрдгрдирд╛ рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдЕрд▓рдЧ рддрд░реАрдХрд╛ред

рдЕрдм рдХрд┐рд╕реА рдЕрдиреНрдп рд╕рдВрдкрддреНрддрд┐ рдХреА рдЧрдгрдирд╛ рдХрд░рдиреЗ рдХрд╛ рдХрд╛рд░рдг рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╣рдо рдмрд╣реБрд░реВрдкрддрд╛ рдЦреЛ рджреЗрддреЗ рд╣реИрдВред
рдЖрдЗрдП рдЕрдкрдиреЗ рд╕рд╛рд░ рдЗрдирдкреБрдЯ рдШрдЯрдХ рдХреЛ рд╡рд╛рдкрд╕ рд▓реЗрдВред рдЕрдм рдЬрдм рдЗрд╕рдХреА рдЧрдгрдирд╛ рдХреА рдЧрдИ рд╕рдВрдкрддреНрддрд┐ valid , рддреЛ рдСрдЯреЛ-рдлреЙрд░реНрдо рдХреА рддрд░рд╣ рдПрдХ рдФрд░ рдШрдЯрдХ рдмрдирд╛рдирд╛ рд╕рдВрднрд╡ рд╣реИ, рдЬреЛ auto-form.validate() рдкрд░ рдХреЙрд▓ рдХрд░рдиреЗ рдкрд░, рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдбреЛрдо рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╕рднреА рдЗрдирдкреБрдЯ рдШрдЯрдХ рдХреЛ рдкрд╛рд░ рдХрд░ рдЬрд╛рдПрдЧрд╛ , рдФрд░ рдЙрдирдХреА valid рд╕рдВрдкрддреНрддрд┐рдпреЛрдВ рдХреА рдЬрд╛рдВрдЪ рдХрд░реЗрдВред
рдореИрдВ рдПрдХ рд╕рдВрдкрддреНрддрд┐ рдХреЛ рд╕реАрдзреЗ рдкрдврд╝рдиреЗ рдХреЗ рдмрдЬрд╛рдп validate() рдлрд╝рдВрдХреНрд╢рди рдЪрд▓рд╛рдиреЗ рд╕реЗ рдмрдЪрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ, рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕реЗ рдкреНрд░рддреНрдпреЗрдХ Input рдШрдЯрдХ рдкрд░ рдХреЙрд▓ рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдФрд░ рдЗрд╕рдореЗрдВ рдЬрд┐рддрдиреЗ рдЕрдзрд┐рдХ рдЗрдирдкреБрдЯ рд╣реЛрдВрдЧреЗ, рдФрд░ рдЙрддрдирд╛ рд╣реА рдЕрдзрд┐рдХ рд╡реЗ рдЬрдЯрд┐рд▓ рд╣реИрдВ, рдЬрд┐рддрдиреА рдЕрдзрд┐рдХ рд╡рд┐рд▓рдВрдмрддрд╛ рд╣реЛрдЧреАред

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

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

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

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

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

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

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

paranoid-android picture paranoid-android  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ