рдШрдЯрдХреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рд╛рдорд╛рдиреНрдп рд╕реНрдерд┐рддрд┐ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ
рдкрд┐рдЫрд▓реЗ рд▓реЗрдЦ рдХреЗ рд▓рд┐рдП рдПрдХ рдирд┐рд░рдВрддрд░рддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ, рдореИрдВ рдЗрд╕ рд╡рд┐рд╖рдп рдХреЛ рдФрд░ рд╡рд┐рдХрд╕рд┐рдд рдХрд░реВрдВрдЧрд╛ рдФрд░ рдПрдХ рдРрд╕реА рд╡рд┐рд╢реЗрд╖рддрд╛ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдЬреЛ рдкреНрд░рддреНрдпреЗрдХ рдШрдЯрдХ рдореЗрдВ рдПрдХ рд░рд╛рдЬреНрдп рдкрд░рд┐рд╡рд░реНрддрди рдШрдЯрдирд╛ рдХреЛ рдкрдХрдбрд╝реЗрдЧреА рдФрд░ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░реЗрдЧреА (рдЬрдм рд╕рд╛рдорд╛рдиреНрдп рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдбреЗрдЯрд╛ рдХреБрдЫ рдШрдЯрдХ рдореЗрдВ рдмрджрд▓рддрд╛ рд╣реИ)ред
рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рд▓рд┐рдВрдХрдЖрдорддреМрд░ рдкрд░ рдПрдХ рдШрдЯрдХ рдореЗрдВ рдбреЗрдЯрд╛ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЛ рдЯреНрд░реИрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдПрдХ рд╕реАрдзрд╛ рд╕рдВрдмрдВрдз рдмрдирд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЕрд░реНрдерд╛рдд, рд╣рдо рдпрд╛ рддреЛ рдЕрдкрдбреЗрдЯ рд╡рд┐рдзрд┐ рдореЗрдВ рдЬрд╛рдВрдЪрддреЗ рд╣реИрдВ рдХрд┐ рдХреНрдпрд╛ рдбреЗрдЯрд╛ рд╡рд╣рд╛рдВ рдмрджрд▓ рдЧрдпрд╛ рд╣реИ
рдЕрджреНрдпрддрди рд╡рд┐рдзрд┐ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдбреЗрдЯрд╛ рд╕рддреНрдпрд╛рдкрди рдХреЛ рдкреНрд░реАрдлрд╝реНрд░реЗрдо рдХрд░реЗрдВрдпрд╛ рд╣рдо рдПрдХ рдмрд╣реБрдд рд╡рд┐рд╢рд┐рд╖реНрдЯ рдШрдЯрдирд╛ рдХреА рд╕рджрд╕реНрдпрддрд╛ рд▓реЗрддреЗ рд╣реИрдВ, рдЬрд┐рд╕реЗ "рдЯреНрд░реИрдХ рдХрд┐рдП рдЧрдП" рдШрдЯрдХ рдореЗрдВ рд╕реНрд╡рддрдВрддреНрд░ рд░реВрдк рд╕реЗ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдлрд┐рд░ рдмрд╛рдж рдореЗрдВ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдПрдХ рдШрдЯрдХ рдореЗрдВ рдПрдХ рдШрдЯрдирд╛ рдХреЗ рд▓рд┐рдП рд╕рджрд╕реНрдпрддрд╛ рдФрд░ рдЗрд╕реЗ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдгрдЗрд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдореЗрдВ рдХрдИ рдХрдорд┐рдпрд╛рдВ рд╣реИрдВ, рдЬреЛ рдЬреНрдпрд╛рджрд╛рддрд░ рдкрд┐рдЫрд▓реЗ рд▓реЗрдЦ рдореЗрдВ рд╡рд░реНрдгрд┐рдд рд╣реИрдВред рдЗрди рдХрдорд┐рдпреЛрдВ рдХрд╛ рдореБрдЦреНрдп рдЖрдо рдХрд╛рд░рдг рдордЬрдмреВрдд рдЬреБрдЯрдирд╛ рдФрд░ рдЬрдЯрд┐рд▓ рд░рдЦрд░рдЦрд╛рд╡ (рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ, рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдФрд░ рд░рд┐рдлреНрд▓реЗрдХреНрдЯрд░ рдХреА рдХреНрд╖рдорддрд╛) рд╣реИред
рдПрдХ рд░рд╛рдЬреНрдп рдЕрдзрд┐рд╕реВрдЪрдирд╛ рд╕рдорд╛рдзрд╛рди рдмрдирд╛рдирд╛
рдЕрдм рдЬрдм рдЖрдкрдХреЗ рдкрд╛рд╕ рдПрдХ рдРрд╕реА рдкреНрд░рдгрд╛рд▓реА рд╣реИ рдЬреЛ рдЖрдкрдХреЛ рдШрдЯрдХреЛрдВ рдХреЗ рдмреАрдЪ рдореЗрд▓ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдШрдЯрдХреЛрдВ рдФрд░ рд╕рд╛рдзрдиреЛрдВ рдХреЗ рдмреАрдЪ рд╕рдВрдмрдВрдз рдХреЛ рдвреАрд▓рд╛ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреА рд╣реИ, рддреЛ рдЖрдк рд╕рд╛рдорд╛рдиреНрдп рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдореВрд▓реНрдпреЛрдВ рдХреА рдореИрдиреНрдпреБрдЕрд▓ рдЬрд╛рдБрдЪ рд╕реЗ рдЫреБрдЯрдХрд╛рд░рд╛ рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВ:
рд╕рд╛рдорд╛рдиреНрдп рд╕реНрдерд┐рддрд┐ рдкрд░рд┐рд╡рд░реНрддрди рдЕрдзрд┐рд╕реВрдЪрдирд╛ рдпреЛрдЬрдирд╛рдкрд┐рдЫрд▓реЗ рд▓реЗрдЦ рдореЗрдВ рд╡рд░реНрдгрд┐рдд рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдореЗрдВ, рдбреЗрдЯрд╛ рдХреЛ рдПрдХ рд╕реНрдерд╛рди рдкрд░, SharedState рдШрдЯрдХ рдХреЗ рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛ рдореЗрдВ рдмрджрд▓ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдФрд░ рдЗрд╕рд▓рд┐рдП рдЙрдирдХреЗ рдкрд░рд┐рд╡рд░реНрддрди рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдирд╛ рдмрд╣реБрдд рд╕рд░рд▓ рд╣реИ
рд╕рд╛рдорд╛рдиреНрдп рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛ рдХреЗ рд╕реЗрдЯрд░ рдореЗрдВ, рд╣рдо рд░рд╛рдЬреНрдп рдорд╛рди рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддреЗ рд╣реИрдВред
рдЕрдм,
SharedState рдШрдЯрдХ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ
SharedEvents рдкрд░ рдирд┐рд░реНрднрд░рддрд╛ рдЬреЛрдбрд╝рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдореИрдВ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рд╕реВрдЪрдирд╛рдПрдВ рднреЗрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд░реВрдВрдЧрд╛ред
SharedState рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢реЗрд╖рддрд╛ рдЬреЛрдбрд╝реЗрдВ
ред
SharedEvents рд╕реЗ SharedState рдирд┐рд░реНрднрд░рддрд╛ рдЬреЛрдбрд╝рдирд╛рдФрд░ рдПрдХ рдХреНрд▓рд╛рд╕ рдмрдирд╛рдПрдВ рдЬреЛ рдПрдХ рд╕реНрдЯреЗрдЯрд╕ рдиреЛрдЯрд┐рдлрд┐рдХреЗрд╢рди рдореЗрдВ рдбреЗрдЯрд╛ рднреЗрдЬрдиреЗ рдХреЗ рд▓рд┐рдП EventData рд╕реЗ рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рдорд┐рд▓реЗред рдЗрд╕рдореЗрдВ рдкреИрд░рд╛рдореАрдЯрд░ рдХрд╛ рдирд╛рдо рд╣реЛрдЧрд╛, рд░рд╛рдЬреНрдп рдФрд░ рдЙрд╕рдХрд╛ рдирдпрд╛ рдореВрд▓реНрдп
рдПрдХ рд╡рд░реНрдЧ рдХреЛ рдЬреЛрдбрд╝рдирд╛ рдЬрд┐рд╕рдореЗрдВ рд╕рд╛рдорд╛рдиреНрдп рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдмрджрд▓рд╛рд╡ рдХреА рдЬрд╛рдирдХрд╛рд░реА рд╣реЛрдЕрдм рдЖрдкрдХреЛ
SharedEvents рдХреЗ рд▓рд┐рдП рдПрдХ рд▓рд┐рдВрдХ рдЬреЛрдбрд╝рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЗрд╕реЗ
SharedState рдШрдЯрдХ рдореЗрдВ рдЧреЗрдо рдСрдмреНрдЬреЗрдХреНрдЯ рд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣рд╛ рд╣реИ
SharedEvents рдХреЛ рдПрдХ SharedState рдШрдЯрдХ рдореЗрдВ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛рдЕрдм рд╣рдо рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛ рдХреЗ рд╕реЗрдЯрд░ рдХреЛ рдмрджрд▓ рджреЗрдВрдЧреЗ рддрд╛рдХрд┐ рд╣рд░ рдмрд╛рд░ рд░рд╛рдЬреНрдп рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рд╣реЛрдиреЗ рдкрд░, "sharestatechanged" рдирд╛рдо рдХреЗ рд╕рд╛рде рдПрдХ рдЕрдзрд┐рд╕реВрдЪрдирд╛ рдмрдирд╛рдИ рдЬрд╛рдП рдФрд░ рд╣рдо рдкрд░рд┐рд╡рд░реНрддрди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕рднреА рдбреЗрдЯрд╛ рд╡рд╛рд▓реЗ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ рдкрд╛рд╕ рдХрд░реЗрдВ
рдЗрдВрдбреЗрдХреНрд╕ рд╕реЗрдЯрд░ рдХреЛ рдмрджрд▓реЗрдВрдЕрдм рдпрд╣ рдПрдХ рдШрдЯрдХ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдХреА рд╕рджрд╕реНрдпрддрд╛ рд▓реЗрдиреЗ рдХреЗ рд▓рд┐рдП рдмрдиреА рд╣реБрдИ рд╣реИ, рдбреЗрдЯрд╛ рдХреЛ рджреВрд╕рд░реЗ рдореЗрдВ рдмрджрд▓реЗрдВ рдФрд░ рдЬрд╛рдВрдЪреЗрдВ рдХрд┐ рдпрд╣ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред
рдорд╛рди рд▓реЗрдВ рдХрд┐
SecondComponent рд╕реНрдЯреЗрдЯреНрд╕ рдмрджрд▓рддрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, "somedata" рдкреИрд░рд╛рдореАрдЯрд░ рдФрд░
FirstComponent рдШрдЯрдХ рд╕реВрдЪрдирд╛рдУрдВ рдХреА рд╕рджрд╕реНрдпрддрд╛ рд▓реЗрдХрд░ рд░рд╛рдЬреНрдп рдкрд░рд┐рд╡рд░реНрддрди рдХреА рдирд┐рдЧрд░рд╛рдиреА рдХрд░рддрд╛ рд╣реИ
SecondComponent рдореЗрдВ, рд╣рдо рдкреИрд░рд╛рдореАрдЯрд░ рдкрд░рд┐рд╡рд░реНрддрди рдХрд╣рддреЗ рд╣реИрдВ
рдбреЗрдЯрд╛ рдХреЙрд▓ рдмрджрд▓реЗрдВрдФрд░ рдЕрдм
FirstComponent рд╡рд┐рдзрд┐ рдореЗрдВ
рд╣рдо рдПрдХ рд╣реИрдВрдбрд▓рд░ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ рдФрд░ рд╕рд╛рдорд╛рдиреНрдп рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдХрдВрд╕реЛрд▓ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА
рдкреНрд░рд┐рдВрдЯ рдХрд░рддреЗ рд╣реИрдВ
рд╕рд╛рдорд╛рдиреНрдп рд╕реНрдерд┐рддрд┐ рдмрджрд▓реЗрдВ рдЗрд╡реЗрдВрдЯ рд╣реИрдВрдбрд▓рд┐рдВрдЧрдЕрдм, рдпрджрд┐ рдЖрдк рдЦреЗрд▓ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╕рд╛рдорд╛рдиреНрдп рд╕реНрдерд┐рддрд┐ рдХреЛ
SecondComponent рдореЗрдВ
рдмрджрд▓рдиреЗ рдХреЗ рдмрд╛рдж ,
FirstComponent рдШрдЯрдХ рдореЗрдВ рд╣рдо рдПрдХ рд╕реВрдЪрдирд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВрдЧреЗ рдФрд░ рдХрдВрд╕реЛрд▓ рдХреЛ рдбреЗрдЯрд╛ рдЖрдЙрдЯрдкреБрдЯ рдХрд░реЗрдВрдЧреЗ

рдЕрдм рдЬрдм рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рддреЛ рдЖрдк рдереЛрдбрд╝рд╛ рд░рд┐рдлреНрд▓реЗрдХреНрдЯрд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдХреЛрдб рдХреЛ рдФрд░ рдЕрдзрд┐рдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рд╕рд╛рдорд╛рдиреНрдп рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдХреА рд╕реВрдЪрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд╕рджрд╕реНрдпрддрд╛ рдХреЛ
SharedStateComponent рдЖрдзрд╛рд░ рд╡рд░реНрдЧ рдореЗрдВ
рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдФрд░ рдПрдХ рдЕрдореВрд░реНрдд рд╡рд┐рдзрд┐ рдмрдирд╛рдиреА рд╣реЛрдЧреА, рдЬрд┐рд╕реЗ рд▓рд╛рдЧреВ рдХрд░рдХреЗ рдкреНрд░рддреНрдпреЗрдХ рдШрдЯрдХ рдШрдЯрдХ рдХреЗ рд╡рд┐рд╡реЗрдХ рдкрд░ рдпрд╛ рдирд╣реАрдВ, рдЗрд╕рдореЗрдВ рд░рд╛рдЬреНрдп рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░реЗрдЧрд╛ред
SharedStateComponent рдХреА рд╕рджрд╕реНрдпрддрд╛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд
рдХрд░рдирд╛
рдмреЗрд╕ рдХреНрд▓рд╛рд╕ рдореЗрдВ рд╕рд╛рдорд╛рдиреНрдп рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдХреА рд╕реВрдЪрдирд╛рдУрдВ рдХреА рд╕рджрд╕реНрдпрддрд╛рдПрдХ рд╕рд╛рд░ рд╡рд┐рдзрд┐ рдЬреЛрдбрд╝реЗрдВ рдФрд░ рдЗрд╕реЗ рдШрдЯрдирд╛ рд╣реИрдВрдбрд▓рд░ рдореЗрдВ рдмреБрд▓рд╛рдПрдВ
рдмрд╛рд▓ рдХрдХреНрд╖рд╛рдУрдВ рдореЗрдВ рдШрдЯрдирд╛ рдХреЛ рд╕рдВрднрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдореВрд░реНрдд рд╡рд┐рдзрд┐ рдЬреЛрдбрд╝рдирд╛рдФрд░ рдЕрдм,
FirstComponent рдФрд░
SecondComponent рдХреЗ рдкреНрд░рддреНрдпреЗрдХ рдмрд╛рд▓ рдШрдЯрдХ рдореЗрдВ
, рдЖрдкрдХреЛ рдЗрд╕ рд╡рд┐рдзрд┐ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдФрд░ рдЗрд╕рдореЗрдВ рд╕рд╛рдорд╛рдиреНрдп рд╕реНрдерд┐рддрд┐ рдкрд░рд┐рд╡рд░реНрддрди рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рд╣рдо рдЗрд╕реЗ рдкрд╣рд▓реЗ рдХреА рддрд░рд╣ рд╣реА рдХрдВрд╕реЛрд▓ рдореЗрдВ рдкреНрд░рд┐рдВрдЯ рдХрд░реЗрдВрдЧреЗ
FirstComponent рдФрд░ SecondComponent рдШрдЯрдХреЛрдВ рдореЗрдВ рдПрдХ рдЕрдореВрд░реНрдд рд╡рд┐рдзрд┐ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдирд╛рдФрд░ рдЕрдм рдЬрдм рд╣рдо рдЦреЗрд▓ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВ рддреЛ рд╣рдо рджреЛрдиреЛрдВ рдШрдЯрдХреЛрдВ рд╕реЗ рдХрдВрд╕реЛрд▓ рдореЗрдВ 2 рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рдпрд╛рдВ рджреЗрдЦреЗрдВрдЧреЗред

рдорд╣рддреНрд╡рдкреВрд░реНрдг!
рдкрд┐рдЫрд▓реЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдореЗрдВ,
SharedEvents рд╡рд░реНрдЧ рдореЗрдВ рдПрдХ рдмрдЧ рдерд╛
, рдФрд░ рдЗрд╕реЗ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ
рд╕рджрд╕реНрдпрддрд╛ рд╡рд┐рдзрд┐ рдХреЛ рдмрджрд▓рдирд╛ рд╣реЛрдЧрд╛:
