Разве ключевое слово static не должно ссылаться на глобальную переменную для самого класса и никак не связано с экземпляром компонента?
, тогда почему в шаблоне составного компонента, когда мы создаем несколько компонентоводного и того же класса они имеют тенденцию вести себя отдельно, хотя они зависят от статической переменной
Так что, насколько я понимаю, ключевое слово "static" состоит в том, что это глобальная переменная для всех экземпляров класса и изменение в этомпеременная должна изменить все компоненты этого класса
static On = (props)=> props.on ? props.children : null
static Off = (props)=> !props.on ? props.children : null
static Button = ({on,toggle})=> <Switch on={on} onClick={toggle}/>
return React.Children.map(this.props.children, child=>{
return React.cloneElement(child,{
on:this.state.on,
toggle:this.toggle
})
})
<>
<Toggle onToggle={onToggle}>
<Toggle.On>The button is on</Toggle.On>
<Toggle.Off>The button is off</Toggle.Off>
<Toggle.Button />
</Toggle>
<Toggle onToggle={onToggle}>
<Toggle.On>The button is on</Toggle.On>
<Toggle.Button />
<Toggle.Off>The button is off</Toggle.Off>
</Toggle>
</>
Честно говоря, я ожидал, что оба компонента будут включаться и выключаться, когда я воздействую на один из них, может кто-нибудь объяснить это мне?