React: рдЪреЗрддрд╛рд╡рдиреА рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЯрд╛рдЗрдк рд░реЗрдбрд┐рдпреЛ рдХреЗ рдЕрдирд┐рдпрдВрддреНрд░рд┐рдд рдЗрдирдкреБрдЯ рдХреЛ рдмрджрд▓ рд░рд╣рд╛ рд╣реИ ...

рдХреЛ рдирд┐рд░реНрдорд┐рдд 16 рдордИ 2016  ┬╖  30рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: facebook/react

рдореЗрд░реЗ рдкрд╛рд╕ рдпрд╣ рдХреЛрдб рд╣реИ

       <input name='test' value={1} type='radio' />
       <input name='test' value={2} type='radio' defaultChecked />

https://jsfiddle.net/69z2wepo/42137/

рдФрд░ рдЬрдм рдореИрдВ рд░реЗрдбрд┐рдпреЛ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рддрд╛ рд╣реВрдВ рддреЛ рдпрд╣ рдореБрдЭреЗ рдЪреЗрддрд╛рд╡рдиреА рджреЗрддрд╛ рд╣реИ
рдЪреЗрддрд╛рд╡рдиреА: рдЯреЗрд╕реНрдЯ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЯрд╛рдЗрдк рд░реЗрдбрд┐рдпреЛ рдХреЗ рдЕрдирд┐рдпрдВрддреНрд░рд┐рдд рдЗрдирдкреБрдЯ рдХреЛ рдмрджрд▓ рд░рд╣рд╛ рд╣реИред рдЗрдирдкреБрдЯ рддрддреНрд╡реЛрдВ рдХреЛ рдЕрдирд┐рдпрдВрддреНрд░рд┐рдд рд╕реЗ рдирд┐рдпрдВрддреНрд░рд┐рдд (рдпрд╛ рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд) рд╕реНрд╡рд┐рдЪ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рдШрдЯрдХ рдХреЗ рдЬреАрд╡рдирдХрд╛рд▓ рдХреЗ рд▓рд┐рдП рдирд┐рдпрдВрддреНрд░рд┐рдд рдпрд╛ рдЕрдирд┐рдпрдВрддреНрд░рд┐рдд рдЗрдирдкреБрдЯ рддрддреНрд╡ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдмреАрдЪ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓реЗрдВред рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА: https://fb.me/react-controlled-compenders

рддреЛ рдпрд╣ рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рдмрдЧ рдХреНрдпреЛрдВ рд╣реИ?

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

@LiJinyao

рдЗрд╕рдХрд╛ рдЕрд░реНрде рд╣реИ this.state.isMustFill рд╣рдореЗрд╢рд╛ true рдпрд╛ false , рдмрд▓реНрдХрд┐ true рдпрд╛ undefined , рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдПред рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ рдпрд╣ рд╣рдореЗрд╢рд╛ рдмреВрд▓рд┐рдпрди рд╣реИ, рдФрд░ рд╕рдорд╕реНрдпрд╛ рджреВрд░ рд╣реЛ рдЬрд╛рдПрдЧреАред

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

рдпрд╣ рдПрдХ рдмрдЧ рд╣реИред : +1:

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдмрд┐рдирд╛ рд╕реЛрдЪреЗ рд╕рдордЭреЗ value рд╕реЗрдЯ рд╣реЛ рд░рд╣рд╛ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рд░реЗрдбрд┐рдпреЛ-рдЗрдирдкреБрдЯ рд╣реИ рдЬреЛ value рдЕрд▓рдЧ-рдЕрд▓рдЧ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред

рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджрд╛ рд╣реИ, рдореБрдЭреЗ рдЪреЗрддрд╛рд╡рдиреА рдорд┐рд▓ рд░рд╣реА рд╣реИ рдХрд┐ рдореИрдВ рдЗрд╕ рдХреЛрдб рдХреЗ рд╕рд╛рде рдПрдХ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдирд┐рдпрдВрддреНрд░рд┐рдд рдШрдЯрдХ рд╕реНрд╡рд┐рдЪ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ:

function CheckboxButton({checked, onChange, textComponent} = {}) {
    return (
        <label className='checkbox-button'>
            <input
                type='checkbox'
                checked={checked}
                onChange={onChange}/>
            {textComponent}
        </label>
    );
}

рдЕрдЧрд░ рдореИрдВ рдПрдХ рдмреЗрдХрд╛рд░ value рдкреНрд░реЛрдк рдЬреЛрдбрд╝ рджреЗрддрд╛ рд╣реВрдВ рддреЛ рдХреЛрдИ рдЪреЗрддрд╛рд╡рдиреА рдирд╣реАрдВ рд╣реИред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЪреЗрддрд╛рд╡рдиреА рдХреЛрдб рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдЪреЗрдХрдмреЙрдХреНрд╕ рдХреА value рд╕рдВрдкрддреНрддрд┐ рдпрд╣ рдЗрдВрдЧрд┐рдд рдирд╣реАрдВ рдХрд░рддреА рд╣реИ рдХрд┐ рдпрд╣ рдирд┐рдпрдВрддреНрд░рд┐рдд рд╣реИ рдпрд╛ рдирд╣реАрдВ, рдмрд▓реНрдХрд┐ checked рдкреНрд░реЛрдк рд╣реИред

cc @zpao @spicyj рд▓рдЧрддрд╛ рд╣реИ рдЬреИрд╕реЗ рд╣рдо рдпрд╣ рддрдп рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред

рд╣рд╛рдБ, рдореИрдВрдиреЗ рдХрд▓ рдЦреБрдж рджреЗрдЦрд╛ред

рдпрд╣ рдмрдЧ рдереЛрдбрд╝рд╛ рдкрд░реЗрд╢рд╛рди рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рд╣реИред рдПрдХ рдмрд╛рдд рдХреЗ рд▓рд┐рдП, рд╡рд┐рдЪрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдИ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдЗрдирдкреБрдЯ рдкреНрд░рдХрд╛рд░ рд╣реИрдВ (https://www.w3.org/TR/html5/forms.html#attr-input-type) рдФрд░ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХрд▓реНрдкрдирд╛ рдХреЗ рд╕рдВрдХреЗрдд рд╕реЗ рдЕрдзрд┐рдХ рдкреНрд░рдХрд╛рд░реЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддреЗ рдкреНрд░рддреАрдд рд╣реЛрддреЗ рд╣реИрдВ (рдХреЗ рд▓рд┐рдП) рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдореЛрдЬрд╝рд┐рд▓рд╛ https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input) рдХреЗ рдЕрдиреБрд╕рд╛рд░ "рдорд╣реАрдирд╛" рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред

рдПрдХ рд░реЗрдбрд┐рдпреЛ рдмрдЯрди рдХреЗ рд╡рд┐рд╢реЗрд╖ рдорд╛рдорд▓реЗ рдореЗрдВ, рдпрд╣ рдЗрд╕ рддрдереНрдп рд╕реЗ рдФрд░ рдЬрдЯрд┐рд▓ рд╣реИ рдХрд┐ рдЖрдк рдХрд┐рд╕реА рдПрдХрд▓ рдЗрдирдкреБрдЯ рдХреЛ рджреЗрдЦрдХрд░ рдХрд┐рд╕реА рд╕рдореВрд╣ рдХреА "рдирд┐рдпрдВрддреНрд░рд┐рддрддрд╛" рдХрд╛ рдирд┐рд░реНрдзрд╛рд░рдг рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЖрдкрдХреЛ рдПрдХ рд╣реА рдлреЙрд░реНрдо рд╕рдореВрд╣ рдХреЗ рднреАрддрд░ рдПрдХ рд╣реА name рдкреНрд░реЛрдк рдХреЗ рд╕рд╛рде рд╕рднреА рдЗрдирдкреБрдЯреЛрдВ рдХреЛ рджреЗрдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдЫреАред

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

рдпрд╣ рдмрдЧ рдереЛрдбрд╝рд╛ рдкрд░реЗрд╢рд╛рди рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рд╣реИред рдПрдХ рдмрд╛рдд рдХреЗ рд▓рд┐рдП, рд╡рд┐рдЪрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдИ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдЗрдирдкреБрдЯ рдкреНрд░рдХрд╛рд░ рд╣реИрдВ (https://www.w3.org/TR/html5/forms.html#attr-input-type) рдФрд░ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХрд▓реНрдкрдирд╛ рдХреЗ рд╕рдВрдХреЗрдд рд╕реЗ рдЕрдзрд┐рдХ рдкреНрд░рдХрд╛рд░реЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддреЗ рдкреНрд░рддреАрдд рд╣реЛрддреЗ рд╣реИрдВ (рдХреЗ рд▓рд┐рдП) рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдореЛрдЬрд╝рд┐рд▓рд╛ https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input) рдХреЗ рдЕрдиреБрд╕рд╛рд░ "рдорд╣реАрдирд╛" рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред

@jimfb рдпрдХреАрди рд╣реИ рдХрд┐ рдЕрдЧрд░ рдореИрдВ рдЕрдиреБрд╕рд░рдг рдХрд░ рд░рд╣рд╛ рд╣реИ, рдЬрд╣рд╛рдВ рддрдХ рдореИрдВ рдпрд╣ рд╕рдордЭ рдХреЗ рд░реВрдк рдореЗрдВ рдФрд░ рдпрд╣ рд╕рд┐рд░реНрдл рдЬрд╛рдБрдЪ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣реИ рдХрд╛ рд╕рд╡рд╛рд▓ рд╣реИ рдХрд┐ рдХреНрдпрд╛ type="radio" рдпрд╛ type="checkbox" рдФрд░ рдлрд┐рд░ рдкрд░реАрдХреНрд╖рдг checked рдХреЗ рдмрдЬрд╛рдп value , рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ value рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдЕрднреА рдХреА рдкрд░рд╡рд╛рд╣ рдХрд┐рдП рдмрд┐рдирд╛ рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИред рдЕрдиреНрдп рдкреНрд░рдХрд╛рд░ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдорд╛рдпрдиреЗ рдирд╣реАрдВ рд░рдЦрддреЗ рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рд╕рднреА value рдкрд░ рднрд░реЛрд╕рд╛ рдХрд░рддреЗ рд╣реИрдВред

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

рдирд┐рдпрдВрддреНрд░рд┐рдд рдФрд░ рдЕрдирд┐рдпрдВрддреНрд░рд┐рдд рд░реЗрдбрд┐рдпреЛ рдХрд╛ рдорд┐рд╢реНрд░рдг рднреА рдПрдХ рд╕рдорд╕реНрдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдПрдХ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрд▓рдЧ рд╕рдорд╕реНрдпрд╛ IMHO рд╣реИред рдпрд╣ рдЪреЗрддрд╛рд╡рдиреА рдмрд╕ рдирд┐рдпрдВрддреНрд░рд┐рдд рдФрд░ рдЕрдирд┐рдпрдВрддреНрд░рд┐рдд рд╣реЛрдиреЗ рдХреЗ рдмреАрдЪ рдПрдХ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдЗрдирдкреБрдЯ рдХреЛ рдмрджрд▓рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣реИред Ie checked рдХреЛ рдПрдХ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдШрдЯрдХ рдкрд░ рдЕрд╢рдХреНрдд рдпрд╛ рдЕрд╢рдХреНрдд рдпрд╛ рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд рдирд╣реАрдВ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред

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

рдореИрдВ рдЕрднреА рднреА рдЗрд╕ рд░рд╛рдп рдкрд░ рдХрд╛рдпрдо рд╣реВрдВ рдХрд┐ рд╡реЗ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрд▓рдЧ рдШрдЯрдХ рд╣реЛрдиреЗ рдЪрд╛рд╣рд┐рдПред

im рдпрд╣ рднреА рдЕрдиреБрднрд╡ рдХрд░ рд░рд╣рд╛ рд╣реИ: рд░реЗрдбрд┐рдпреЛ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рдирд╛ рддреНрд░реБрдЯрд┐ рджрд┐рдЦрд╛рддрд╛ рд╣реИ

<div className="radio">
                                        <label>
                                            <input type="radio" name="type" value="In Person" defaultChecked={true} />
                                            <span> In Person</span>
                                        </label>
                                    </div>
                                    <div className="radio margin-left-20">
                                        <label>
                                            <input type="radio" name="type" value="Phone" />
                                            <span> Phone</span>
                                        </label>
                                    </div>
                                    <div className="radio margin-left-20">
                                        <label>
                                            <input type="radio" name="type" value="Webex" />
                                            <span> Webex</span>
                                        </label>
                                    </div>

@ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдереЛрдбрд╝рд╛ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рд╣реИред рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪреЗрдВ рдХрд┐ рдЖрдк рдирд┐рдпрдВрддреНрд░рд┐рдд рдФрд░ рдЕрдирд┐рдпрдВрддреНрд░рд┐рдд рд░реЗрдбрд┐рдпреЛ рдмрдЯрди рдХреЗ рдмреАрдЪ рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрди рдЪреЗрддрд╛рд╡рдирд┐рдпреЛрдВ рдХреЛ рдХреИрд╕реЗ рд▓рд╛рдЧреВ рдХрд░реЗрдВрдЧреЗред

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

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

@ рдЬрд╝рд╛рдкреЛ рд╡рд╣реА рд╣реИ рдЬрд┐рд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдореИрдВ рдмрд╛рдд рдХрд░ рд░рд╣рд╛ рд╣реВрдВ - рдпрд╣ рдЪреЗрддрд╛рд╡рдиреА рд░реЗрдбрд┐рдпреЛ рдмрдЯрди рдХреЗ рд▓рд┐рдП рдЧрд▓рдд рддрд░реАрдХреЗ рд╕реЗ (рдмрд╣реБрдд рдмрд╛рд░) рдлрд╛рдпрд░рд┐рдВрдЧ рд╣реИред

рдЕрдЧрд░ рд╣рдо рд╕рд┐рд░реНрдл рдПрдХ рддреНрд╡рд░рд┐рдд рд╕реБрдзрд╛рд░ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдореЗрдВ рд░реЗрдбрд┐рдпреЛ рдмрдЯрди рдХреЗ рд▓рд┐рдП рдЗрд╕ рдЪреЗрддрд╛рд╡рдиреА рдХреЛ рдЕрдХреНрд╖рдо рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рд░реЗрдбрд┐рдпреЛ рдмрдЯрди рдХреЗ рд▓рд┐рдП 90% рд╕рдорд╛рдзрд╛рди рд╣реИ рдЬреЛ рдХрднреА-рдХрднрд╛рд░ рдЖрдЧ рдХреА рдЪреЗрддрд╛рд╡рдиреА рдирд╣реАрдВ рджреЗрдЧрд╛ред рдПрдХ "рд╕рд╣реА" рдлрд┐рдХреНрд╕ рдХреЛ рдкреНрд░рддреНрдпреЗрдХ рдлреЙрд░реНрдо рд╕рдореВрд╣ рдХреЗ рднреАрддрд░ рд╕рднреА рд░реЗрдбрд┐рдпреЛ рдЗрдирдкреБрдЯ рдХреЛ рдЯреНрд░реИрдХ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред

рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд░рд┐рдкреЛрд░реНрдЯ рдореЗрдВ рдкрд░реАрдХреНрд╖рдг рдХрд╛ рдорд╛рдорд▓рд╛ рдЪреЗрддрд╛рд╡рдиреА рд╣реИ рдФрд░ рдпрд╣ рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрд╣ рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рд░реЗрдбрд┐рдпреЛ рдкрд░ рдирдЬрд╝рд░ рд░рдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЗ рдХрд╛рд░рдг рдирд╣реАрдВ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЧрд▓рдд рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╣рдо value рдХреЛ рд░реЗрдбрд┐рдпреЛ рдФрд░ рдЪреЗрдХрдмреЙрдХреНрд╕ рдХреЗ рд▓рд┐рдП рджреЗрдЦ рд░рд╣реЗ рд╣реИрдВ (рдпрд╣реАрдВ: https://github.com/facebook/react/blob/master /src/renderers/dom/client/wrappers/ReactDOMInput.js#L169-L171)ред рд╣рдореЗрдВ value рд╡рд╛рдкрд╕ рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рд╣рдореЗрдВ рдпрд╣ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рдХрд╛рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдХреНрдпрд╛ рд╣рдореЗрдВ checked рдпрд╛ value рджрд┐рдЦрдирд╛ рдЪрд╛рд╣рд┐рдПред

рдЖрдк рдПрдХ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдорд╕реНрдпрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рд▓реЗрдХрд┐рди рдпрд╣ рдЗрд╕ рдПрдХ рдХреЗ рд▓рд┐рдП рд╕реНрдкрд░реНрд╢рд░реЗрдЦрд╛ рд╣реИред

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

@ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдереЛрдбрд╝рд╛ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рд╣реИред рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪреЗрдВ рдХрд┐ рдЖрдк рдирд┐рдпрдВрддреНрд░рд┐рдд рдФрд░ рдЕрдирд┐рдпрдВрддреНрд░рд┐рдд рд░реЗрдбрд┐рдпреЛ рдмрдЯрди рдХреЗ рдмреАрдЪ рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрди рдЪреЗрддрд╛рд╡рдирд┐рдпреЛрдВ рдХреЛ рдХреИрд╕реЗ рд▓рд╛рдЧреВ рдХрд░реЗрдВрдЧреЗред

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

@ рдЬрд┐рдореНрдл рд╣реБрд╣? рдХреНрдпрд╛ рдпрд╣ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЖрдк рд░реЗрдбрд┐рдпреЛ-рдмрдЯрди https://jsfiddle.net/dt03qw4p/ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рдХрд░рддреЗ рд╣реИрдВ value , рдпрджрд┐ checked рд╢реВрдиреНрдп рд╣реИ, рддреЛ рдпрд╣ рдЕрдирд┐рдпрдВрддреНрд░рд┐рдд рд╣реИ, рдпрджрд┐ рдпрд╣ рдЧреИрд░-рдЕрд╢рдХреНрдд рд╣реИ рддреЛ рдЗрд╕реЗ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рд╕рддреНрдпрддрд╛ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдЗрд╕рдХреА рдЬрд╛рдБрдЪ рдХреА рдЬрд╛рддреА рд╣реИ рдпрд╛ рдирд╣реАрдВ ... рд╕рд╣реА рд╣реИ? рдЗрд╕ рдкрд░рд┐рджреГрд╢реНрдп рдХреЗ рд▓рд┐рдП рдЕрдиреНрдп рд░реЗрдбрд┐рдпреЛ рдХреА рдЬрд╛рдБрдЪ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рдмрд╕ рдпрд╣ рдЬрд╛рдБрдЪрдирд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ checked рд╢реВрдиреНрдп рд╕реЗ рдЕрд╢рдХреНрдд рдпрд╛ рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд (рдпрд╛рдиреА рдмрджрд▓рддреА рдирд┐рдпрдВрддреНрд░рдг) рдирд╣реАрдВ рд╣реИред

рдпрд╛ рдореИрдВ рдХреНрдпрд╛ рдпрд╛рдж рдХрд░ рд░рд╣рд╛ рд╣реВрдБ?

рдпрджрд┐ рдПрдХ рдирд┐рдпрдВрддреНрд░рд┐рдд рдШрдЯрдХ рдореЗрдВ рд░реЗрдбрд┐рдпреЛ рдмрдЯрди рдХреА рдЬрд╛рдБрдЪ рдирд╣реАрдВ рдХреА рдЬрд╛рддреА рд╣реИ рддреЛ @syranide рдХреНрдпрд╛ рдЖрдкрдХреЛ checked={false} рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ? рдЖрдЬ, рдЬрд╡рд╛рдм рдирд╣реАрдВ рд╣реИред рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рд╣рдо рдЗрд╕реЗ рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рдПрдХ рдмрд╣реБрдд рд╡реНрдпрд╛рдкрдХ рдЪрд░реНрдЪрд╛ рд╣реИ рдФрд░ рд▓рдЧрднрдЧ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ 90% рддреНрд╡рд░рд┐рдд рдлрд┐рдХреНрд╕ рдХреЗ рджрд╛рдпрд░реЗ рдореЗрдВ рдирд╣реАрдВ рд╣реИ рдЬреЛ @zabao рдЪрд╛рд╣рддрд╛ рдерд╛ред

рдЙрджрд╛рд╣рд░рдг: рдпрд╣ рдПрдХ рдХрд╛рдиреВрдиреА (рдЕрдкрд░рд┐рд╡рд░реНрддрдиреАрдп) рдирд┐рдпрдВрддреНрд░рд┐рдд рд░реВрдк рд╣реИ:

<form>
  <input type="radio" name="foo" value="1" onChange={()=>{}} />
  <input type="radio" name="foo" value="2" onChange={()=>{}} checked />
  <input type="radio" name="foo" value="3" onChange={()=>{}} />
</form>

рдЬрд╛рд╣рд┐рд░ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рд╡рд┐рд░реЛрдзрд╛рднрд╛рд╕реА рдЙрджрд╛рд╣рд░рдг рд╣реИред рдЖрдк рдХрд▓реНрдкрдирд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рдкрд╛рд╕ рддрддреНрд╡реЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рд╣реИ рдФрд░ рдЬреЛ рдЪреЗрдХ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдЙрд╕ рдкрд░ рдЪреЗрдХ рдХрд┐рдП рдЧрдП рд╡рд┐рд╢реЗрд╖рддрд╛ рдХреЛ рдмрд╕ "рд╕реЗрдЯ" рдХрд░рддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдирддреАрдЬрд╛ рд╡рд╣реА рд╣реИред

рдЗрдирдкреБрдЯ рдХреА "рдирд┐рдпрдВрддреНрд░рд┐рддрддрд╛" рдХреЛ рдкреНрд░рдкрддреНрд░ рдХреЗ рднреАрддрд░ рдкреВрд░реЗ рд╕рдореВрд╣ рджреНрд╡рд╛рд░рд╛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдПрдХ checked рд╡рд┐рд╢реЗрд╖рддрд╛ рдХреА рдХрдореА рдпрд╣ рдЬрд╛рдирдирд╛ рдЕрдкрд░реНрдпрд╛рдкреНрдд рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдХрд┐рд╕реА рд╡рд┐рд╢реЗрд╖ рдЗрдирдкреБрдЯ рддрддреНрд╡ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдкрд╣рд▓реЗ рдЗрдирдкреБрдЯ рдХреА рдирд┐рдпрдВрддреНрд░рд┐рддрддрд╛ рджреВрд╕рд░реЗ рдХреЗ рдирд┐рдпрдВрддреНрд░рдг рд╕реЗ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рд╣реЛрддреА рд╣реИред

рдЗрд╕рд▓рд┐рдП рдпрд╣ рдЪреЗрддрд╛рд╡рдиреА рд░реЗрдбрд┐рдпреЛ рдмрдЯрди рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдореБрд╢реНрдХрд┐рд▓ рд╣реИред

@syranide рдХреНрдпрд╛ рдЖрдкрдХреЛ рдЪреЗрдХ рдХрд┐рдП рдЧрдП рдШрдЯрдХ = {false} рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдпрджрд┐ рд░реЗрдбрд┐рдпреЛ рдмрдЯрди рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдШрдЯрдХ рдореЗрдВ рдЪреЗрдХ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ? рдЖрдЬ, рдЬрд╡рд╛рдм рдирд╣реАрдВ рд╣реИред

@jimfb рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЬрд╡рд╛рдм рдПрдХ рдЕрд░реНрде рдореЗрдВ рд╣рд╛рдВ рд╣реИ ...? https://jsfiddle.net/hx2r7bc4/ (рдЖрдХрд╕реНрдорд┐рдХ рдЙрджрд╛рд╣рд░рдг, рд▓реЗрдХрд┐рди рдлрд┐рд░ рднреА)

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

рдЙрджрд╛рд╣рд░рдг: рдпрд╣ рдПрдХ рдХрд╛рдиреВрдиреА (рдЕрдкрд░рд┐рд╡рд░реНрддрдиреАрдп) рдирд┐рдпрдВрддреНрд░рд┐рдд рд░реВрдк рд╣реИ:

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

рддреЛ рдлрд┐рд░, рдпрд╣ рдореБрдЭреЗ рдЬреАрдд-рдЬреАрдд рдХреЗ рдПрдХ рдорд╛рдорд▓реЗ рдХреА рддрд░рд╣ рд▓рдЧрддрд╛ рд╣реИ, рдЕрдЧрд░ рдЖрдк рдЗрд╕реЗ рдЧрд▓рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ / рдмреБрд░реА рддрд░рд╣ рд╕реЗ рдЖрдкрдХреЛ рдЪреЗрддрд╛рд╡рдиреА рдорд┐рд▓рддреА рд╣реИред рдЗрд╕реЗ рд╕рд╣реА рдирд╣реАрдВ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдХреЛ рдЪреЗрддрд╛рд╡рдиреА рдорд┐рд▓реЗрдЧреАред

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

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

https://html.spec.whatwg.org/multipage/forms.html#checkbox -state- (рдЯрд╛рдЗрдк рдХрд░реЗрдВ = рдЗрдирдмреЙрдХреНрд╕)

рд╕реБрдзрд╛рд░, MDN рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рдЖрд╡рд╢реНрдпрдХ рд╡рд┐рд╢реЗрд╖рддрд╛ рд╣реИ: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/checkbox

рдХрд▓реНрдкрдирд╛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдпрд╣ рдирд╣реАрдВ рдХрд╣рддреА рд╣реИ рдХрд┐ .. рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдПрдордбреАрдПрди рдХреЗ рд▓рд┐рдП рдкреНрд░рд╢рд╕реНрддрд┐ рдкрддреНрд░ рдХреНрдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдореБрдЭреЗ рдЧрд▓рдд рд▓рдЧрддрд╛ рд╣реИред рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рдореИрдВ рдмрд▓реНрдХрд┐ рдЪреЗрдХрдмреЙрдХреНрд╕ рдХреЗ рд▓рд┐рдП value рд╕рдВрдкрддреНрддрд┐ рдХреЛ рдЫреЛрдбрд╝ рджреВрдВрдЧрд╛, рдпрд╣ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХреЗ рд▓рд┐рдП рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИ рдХрд┐ рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ рддреЛ рдпрд╣ on рдпрд╛ рдХреБрдЫ рдФрд░ рдХреЗ рд▓рд┐рдП рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╣реЛред

рджрд░рдЕрд╕рд▓ рдЬрд╡рд╛рдм рдПрдХ рдорд╛рдпрдиреЗ рдореЗрдВ рд╣рд╛рдВ рд╣реИ ...? https://jsfiddle.net/hx2r7bc4/ (рдЖрдХрд╕реНрдорд┐рдХ рдЙрджрд╛рд╣рд░рдг, рд▓реЗрдХрд┐рди рдлрд┐рд░ рднреА)

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

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

рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рдЕрдЬреАрдм рд╣реИред рдпрд╣ рдХреБрдЫ рдбреЗрдЯрд╛ рдкрд░ рд▓реВрдк рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╕рд╣рдЬ / рд╕реНрд╡рд╛рднрд╛рд╡рд┐рдХ рд╣реИ рдФрд░ checked IFF рд╕реЗрдЯ рдХрд░рддрд╛ рд╣реИ рдбреЗрдЯрд╛ рдХрд╣рддрд╛ рд╣реИ рдХрд┐ рдорд╛рди рдХреА рдЬрд╛рдБрдЪ рдХреА рдЧрдИ рд╣реИ (рдпрд╣ рдорд╛рдирддреЗ рд╣реБрдП рдХрд┐ рдЖрдк jsx рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд░рд╣реЗ рд╣реИрдВ)ред рдореИрдВ рдпрд╣ рднреА рдмреБрд░рд╛ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЖрд╢реНрд╡рд╕реНрдд рдирд╣реАрдВ рд╣реВрдБ (рдКрдкрд░ рдЖрдкрдХреА рдлрд┐рдбреЗрд▓ рдХреЛ рдЫреЛрдбрд╝рдХрд░)ред

рд╡реИрд╕реЗ рднреА, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореИрдВ рдЙрд╕ рд╡реНрдпрд╡рд╣рд╛рд░ рдкрд░ рдкреНрд░рддрд┐рдмрдВрдз рд▓рдЧрд╛рдиреЗ рдХреЗ рд╕рд╛рде рдареАрдХ рд╣реВрдВред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдХрд╛рдо рдХрд░реЗрдЧрд╛ред


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

рдореИрдВ рдпрд╣ рднреА рдмреБрд░рд╛ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЖрд╢реНрд╡рд╕реНрдд рдирд╣реАрдВ рд╣реВрдБ (рдКрдкрд░ рдЖрдкрдХреА рдлрд┐рдбреЗрд▓ рдХреЛ рдЫреЛрдбрд╝рдХрд░)ред

рд╕рд┐рд░реНрдл рдкрдж рдХреЗ рд▓рд┐рдПред рд╣рдо рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд░реВрдк рд╕реЗ checked рдХреА рдЕрд╢рдХреНрддрддрд╛ рд╕реЗ рджреВрд░ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рд╡рд░реНрддрдорд╛рди рдбрд┐рдЬрд╛рдЗрди рдХреЗ рд╕рд╛рде рдирд┐рдпрдВрддреНрд░рдг рдХрд╛ рдирд┐рд░реНрдзрд╛рд░рдг рдХрд░рддрд╛ рд╣реИред рдпрд╣ рджреЗрдЦрддреЗ рд╣реБрдП рдХрд┐ рдПрдХ рдЕрд╢рдХреНрдд checked рдкреНрд░рднрд╛рд╡реА рд░реВрдк рд╕реЗ рдЕрдирд┐рдпрдВрддреНрд░рд┐рдд рд╣реЛрдиреЗ рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдореИрдВ рдХрд╣реВрдВрдЧрд╛ рдХрд┐ рдЙрдиреНрд╣реЗрдВ рдорд┐рд╢реНрд░рдг рдХрд░рдирд╛ рдЧрд▓рдд рд╣реИред рдЕрдм рдпрд╣ рд╕рд┐рд░реНрдл рдЗрддрдирд╛ рд╣реЛрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдЙрд╕ рдкреИрдЯрд░реНрди рдкрд░ рднрд░реЛрд╕рд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬрдм рддрдХ рдХрд┐ рдПрдХ рдХреА рд╣рдореЗрд╢рд╛ рдЬрд╛рдВрдЪ рдХреА рдЬрд╛рддреА рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рд╕рдЪ рд╣реЛрдиреЗ рдХреА рдЧрд╛рд░рдВрдЯреА рдирд╣реАрдВ рд╣реИред рдРрд╕реЗ рдореВрд▓реНрдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдЬреЛ рдХрд┐рд╕реА рднреА рд░реЗрдбрд┐рдпреЛ рдХреЗ рдЕрдиреБрд░реВрдк рдирд╣реАрдВ рд╣реИрдВ (рдЬрд░реВрд░реА рдирд╣реАрдВ рдХрд┐ рдПрдХ рддреНрд░реБрдЯрд┐ рд╣реЛ), рдЕрдЧрд░ рдЖрдкрдиреЗ рдЗрд╕реЗ "рдЧрд▓рдд рддрд░реАрдХреЗ" рд╕реЗ рдХрд┐рдпрд╛ рддреЛ рдХреБрдЫ рд░реЗрдбрд┐рдпреЛ рдЕрднреА рднреА рдЬрд╛рдВрдЪреЗ рдЬрд╛рдПрдВрдЧреЗред

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

IMHO, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореЗрд░реЗ рдкрд╛рд╕ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рдкреАрдЖрд░ рдерд╛ рдЬреЛ рдЙрд╕ рдШрдЯрдХ рдХреЗ рд░рд┐рдорд╛рдЙрдВрдЯрд┐рдВрдЧ рдХреЗ рд╕рдорд╛рди рд╣реЛрдЧрд╛ рдЬрд┐рд╕ рдкрд░ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рд░ рдХреЛрдИ рд╕рд╣рдордд рдерд╛ рд▓реЗрдХрд┐рди рдпрд╣ рдХрднреА рднреА рд╕рдорд╛рдкреНрдд рдирд╣реАрдВ рд╣реБрдЖред рдЗрд╕рд▓рд┐рдП рдЬрдм рддрдХ рдРрд╕рд╛ рдХреБрдЫ рд╣реЛрддрд╛ рд╣реИ рдореИрдВ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рднреА рдЪрд┐рдВрддрд╛ рдирд╣реАрдВ рдХрд░реВрдВрдЧрд╛, рдпрд╣ рдЖрдЬ рдПрдХ рдЗрдирдкреБрдЯ рдХреЗ рдкреНрд░рдХрд╛рд░ рдХреЛ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрд░реНрде рдореЗрдВ рдПрдХ рддреНрд░реБрдЯрд┐ рд╣реИ (рдЕрдиреНрдп рдЯреВрдЯреЗ рд╣реБрдП рдХрд┐рдирд╛рд░реЗ-рдорд╛рдорд▓реЗ рднреА рд╣реИрдВ AFAIK)ред

рдореЗрд░реА рднреА рдпрд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реИред рдпрд╣ рдореЗрд░рд╛ рдХреЛрдб рд╣реИ:

<input type="checkbox" onChange={this.handlerMustfillChange} checked={this.state.isMustFill}/>

рдФрд░ рдЬрдм рдореИрдВ рдЪреЗрдХрдмреЙрдХреНрд╕ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░рддрд╛ рд╣реВрдВ рддреЛ рдореБрдЭреЗ рд╡рд╣реА рдЪреЗрддрд╛рд╡рдиреА рдорд┐рд▓рддреА рд╣реИред
рдЪреЗрддрд╛рд╡рдиреА .js: 44 рдЪреЗрддрд╛рд╡рдиреА: рдкреНрд░рд╢реНрдирдЪрд┐рдиреНрд╣ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЯрд╛рдЗрдк рдЪреЗрдХрдмреЙрдХреНрд╕ рдХрд╛ рдЕрдирд┐рдпрдВрддреНрд░рд┐рдд рдЗрдирдкреБрдЯ рдмрджрд▓ рд░рд╣рд╛ рд╣реИред

@LiJinyao

рдЗрд╕рдХрд╛ рдЕрд░реНрде рд╣реИ this.state.isMustFill рд╣рдореЗрд╢рд╛ true рдпрд╛ false , рдмрд▓реНрдХрд┐ true рдпрд╛ undefined , рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдПред рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ рдпрд╣ рд╣рдореЗрд╢рд╛ рдмреВрд▓рд┐рдпрди рд╣реИ, рдФрд░ рд╕рдорд╕реНрдпрд╛ рджреВрд░ рд╣реЛ рдЬрд╛рдПрдЧреАред

рдХреНрдпрд╛ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдЕрднреА рднреА рдмрдЧ рдХреЗ рд░реВрдк рдореЗрдВ рдорд╛рдирд╛ рдЬрд╛рдПрдЧрд╛?
рдореИрдВ рдЗрд╕реЗ рдмрд┐рдирд╛ рдХрд┐рд╕реА рдЪреЗрддрд╛рд╡рдиреА рдХреЗ defaultChecked рд╕рд╛рде defaultValue рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрджрд▓рддрд╛ рд╣реВрдВред

<input type="radio" name="a" defaultValue="1" defaultChecked/>
<input type="radio" name="a" defaultValue="11"/>

@ рднрдВрдЧ рдореБрдЭреЗ рджреЛрд╖ рдирд╣реАрдВ рд╣реИ, рдореИрдВ рд╣рдореЗрдВ рджреЛрд╖ рджреЗрддрд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рд╕рд┐рд░реНрдл рднрдпрд╛рдирдХ рд╣реИред

@gaearon
рдЬрдм рдХрд┐рд╕реА рдШрдЯрдХ рдХреЗ рдкрд╛рд╕ value рдкреНрд░реЛрдк рд╣реЛрддрд╛ рд╣реИ рдФрд░ рдЙрд╕реА рд╕рдордп defaultValue (рдпрд╛ defaultChecked ) рдкреНрд░реЛрдк рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдпрд╣ рдЕрдирд┐рдпрдВрддреНрд░рд┐рдд рдШрдЯрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдорд╛рдирд╛ рдЬрд╛рдПрдЧрд╛ред

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

@littlee, рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ рдЖрдк рдХреЗ рдмрдЬрд╛рдп рдорддрд▓рдм checked={this.state.isMustFill} рдХрд░рддреЗ checked={!!this.state.isMustFill}

@kopahead

рдЬрд╛рдБрдЪ рдХреЗ рдмрдЬрд╛рдп = {this.state.isMustFill} рдЪреЗрдХ рдХрд░реЗрдВ = {!! this.state.isMustFill}

рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдЗрд╕рд╕реЗ рдкрд╣рд▓реЗ рдореИрдВрдиреЗ рдЬреЛ рдХрд╣рд╛ рдерд╛ рдЙрд╕рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИ

рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рд╣реА рдЪреЗрддрд╛рд╡рдиреА рдереАред null рд╕реЗ false рдХрд╛рд╕реНрдЯрд┐рдВрдЧ рдореВрд▓реНрдп рд╕рдорд╕реНрдпрд╛ рд╣рд▓ рдХрд░рддреА рд╣реИ:
<input type="checkbox" checked={!!this.state.someValue} onChange={.....} >

рдЗрд╕рд▓рд┐рдП рдЕрдм рдореБрдЭреЗ рдЪреЗрдХрдмреЙрдХреНрд╕ рдореЗрдВ рд╣рд░ рдЬрдЧрд╣ !! рд▓рдЧрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП

рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВ: checked={(this.state.someValue)} рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдЬреЛ рдмреВрд▓рд┐рдпрди рдХреЛ рдбрд╛рд▓реЗред рдлрд╛рд▓рд╕реА рдЕрд╢рдХреНрдд / рдЕрдкрд░рд┐рднрд╛рд╖рд┐рдд / 0 / '' = рдЕрд╕рддреНрдп рдмрд╛рдХреА рд╕рдм рд╕рддреНрдпред рдпрд╣ рдПрдХ рдЯрд░реНрдирд░реА рдСрдкрд░реЗрдЯрд░ рдХреА рддрд░рд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ:

checked={(this.state.item5) ? true : false}

рдлрд┐рд░ рднреА рдПрдХ рдФрд░ рддрд░реАрдХрд╛ рд╣реИ:

checked={this.state.someValue === true}

рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдШрдЯрдХ рдХреЗ рд▓реЛрдб рд╣реЛрдиреЗ рдкрд░ checked рдореВрд▓реНрдп undefined рд░реВрдк рдореЗрдВ рдкрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдореИрдВрдиреЗ false рддрдм рдкрд╛рд╕ рдХрд┐рдпрд╛ рд╣реИ рдЬрдм рдпрд╣ undefined ред

рдореИрдВрдиреЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛, рдЪреЗрддрд╛рд╡рдиреА рдЧрд╛рдпрдм рд╣реЛ рдЧрдИред

function CheckboxButton({checked, onChange, textComponent} = {}) {
    return (
        <label className='checkbox-button'>
            <input
                type='checkbox'
                checked={checked || false}
                onChange={onChange}/>
            {textComponent}
        </label>
    );
}
рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

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

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

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

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

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

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