React-native-router-flux: рдЧрддрд┐рд╢реАрд▓ рд╢реАрд░реНрд╖рдХ

рдХреЛ рдирд┐рд░реНрдорд┐рдд 19 рдлрд╝рд░ре░ 2016  ┬╖  23рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: aksonov/react-native-router-flux

рдирдорд╕реНрддреЗ,
рдорд╣рд╛рди рдореЙрдбреНрдпреВрд▓ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж - рдХреНрдпрд╛ рд╢реАрд░реНрд╖рдХ рдФрд░ рдирд╛рд╡рдмрд╛рд░ рдХреА рд╕реНрдерд┐рддрд┐ рдХреЛ рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ рдмрджрд▓рдиреЗ рдХрд╛ рдЙрдирдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рд╣реИред

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдПред
<Route key="UserCredentials" name="UserCredentials" hideNavBar={this.state.UserCredentialsNavBar} component={UserCredentials} initial={ false } title={this.state.title} schema="withoutAnimation" />

рдФрд░ рдлрд┐рд░ рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рд╢реНрд░реЛрддрд╛ рд╣реЛрдЧрд╛ рдЬреЛ рдЗрд╕ рд░рд╛рдЬреНрдп рдХреЛ рдмрджрд▓ рджреЗрдЧрд╛ред

рдореИрдВрдиреЗ рдХреЛрд╢рд┐рд╢ рдХреА рд▓реЗрдХрд┐рди рдХрд╣реАрдВ рдирд╣реАрдВ рдорд┐рд▓рд╛ред

рдЕрдЧреНрд░рд┐рдо рдореЗрдВ рдзрдиреНрдпрд╡рд╛рджред
:0)

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

рдзрдиреНрдпрд╡рд╛рдж рдЕрдХреНрд╕реЛрдиреЛрд╡ред
рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдореИрдВ рдЖрдкрдХреЛ рдареАрдХ рд╕реЗ рд╕рдордЭ рдирд╣реАрдВ рдкрд╛ рд░рд╣рд╛ рд╣реВрдВред
рддреЛ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдпрджрд┐ рдореИрдВ рд╢реАрд░реНрд╖рдХ рдХреА рд╕реНрдерд┐рддрд┐ рдмрджрд▓рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред рдореИрдВ рдлреЛрди рдХрд░реВрдВ
Actions.refresh({title: 'Some other title'})
рдореЗрд░реЗ рдкрд╛рд╕ рд╡рд╛рдкрд╕ рдЖрдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рджред
:0)

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

рдореИрдВрдиреЗ Actions.refresh(props) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдиреЗрд╡рд┐рдЧреЗрдЯрд░ рд╕рдВрдХреНрд░рдордг рдХреЗ рдмрд┐рдирд╛ рдЧреБрдг рд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрднреА рд╕рдорд░реНрдерди рдЬреЛрдбрд╝рд╛ рд╣реИ, рдХреГрдкрдпрд╛ рдЗрд╕реЗ рдЖрдЬрд╝рдорд╛рдПрдВ (рд╕рдВрд╕реНрдХрд░рдг 2.3.1)

рдзрдиреНрдпрд╡рд╛рдж рдЕрдХреНрд╕реЛрдиреЛрд╡ред
рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдореИрдВ рдЖрдкрдХреЛ рдареАрдХ рд╕реЗ рд╕рдордЭ рдирд╣реАрдВ рдкрд╛ рд░рд╣рд╛ рд╣реВрдВред
рддреЛ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдпрджрд┐ рдореИрдВ рд╢реАрд░реНрд╖рдХ рдХреА рд╕реНрдерд┐рддрд┐ рдмрджрд▓рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред рдореИрдВ рдлреЛрди рдХрд░реВрдВ
Actions.refresh({title: 'Some other title'})
рдореЗрд░реЗ рдкрд╛рд╕ рд╡рд╛рдкрд╕ рдЖрдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рджред
:0)

рдореЗрд░рд╛ рдмреБрд░рд╛, рдпрд╣ рд╕рдм рдмрдврд╝рд┐рдпрд╛ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИред рдЖрдкрдХреА рдорджрдж рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рдж рдЕрдХреНрд╕реЛрдиреЛрд╡ред рдмрд╣реБрдд рд╕рд░рд╛рд╣рдирд╛ рдХреАред :0)

рдореИрдВ рдПрдХ рдРрд╕реЗ рдореБрджреНрджреЗ рдореЗрдВ рднрд╛рдЧ рд░рд╣рд╛ рд╣реВрдВ рдЬреЛ рд╢реАрд░реНрд╖рдХ рдХреЛ рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ рд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд╕рд╛рде рдпрд╣рд╛рдВ рдПрдХ рдмрдЧ рдХреА рддрд░рд╣ рд▓рдЧрддрд╛ рд╣реИред рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ Actions.refresh рдЗрд╕реЗ рд╕рднреА рдорд╛рд░реНрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рд╕реЗрдЯ рдХрд░рддрд╛ рд╣реИ, рдЙрдирдХреЗ рд╕реНрдерд┐рд░ рд╢реАрд░реНрд╖рдХреЛрдВ рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░рддрд╛ рд╣реИред

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

рдореИрдВ рдореВрд▓ рдирд┐рд╡рд╛рд╕реА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирдпрд╛ рд╣реВрдБ рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рдбрд┐рдЬрд╝рд╛рдЗрди рджреНрд╡рд╛рд░рд╛ рд╣реИ рдпрд╛ рдирд╣реАрдВ ...?

рдзрдиреНрдпрд╡рд╛рдж!

рдХреНрдпрд╛ рдХрд┐рд╕реА рд╡рд┐рд╢рд┐рд╖реНрдЯ рджреГрд╢реНрдп рдХреЗ рд▓рд┐рдП рдЗрд╕реЗ рд╕реЗрдЯ рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рд╣реИ, рднрд▓реЗ рд╣реА рдореИрдВ рдЙрд╕ рджреГрд╢реНрдп рдкрд░ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдирд╣реАрдВ рд╣реВрдВ? рдЕрд░реНрдерд╛рдд

Actions.refresh({key: 'home', title: 'My new title'})

@greatwitenorth рдЖрдкрдХрд╛ рд╕рдЯреАрдХ рдЙрдкрдпреЛрдЧ рдорд╛рдорд▓рд╛ рдХреНрдпрд╛ рд╣реИ?
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдпрджрд┐ рдЖрдк рдХреБрдВрдЬреА view2 рд╕рд╛рде рдПрдХ рджреГрд╢реНрдп рдореЗрдВ рдиреЗрд╡рд┐рдЧреЗрдЯ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рддреЛ рдЖрдк рдЗрд╕ рддрд░рд╣ рдХреЗ рдкреНрд░реЛрдк рдХреЗ рд╕рд╛рде рд╢реАрд░реНрд╖рдХ рд╕реЗрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ

Actions.view2({ title: 'My New Title' })

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

@greatwitenorth рдореИрдВ рдЙрд╕реА рд╕рдорд╕реНрдпрд╛ рдореЗрдВ рднрд╛рдЧ рдЧрдпрд╛ред рдмрджрд▓реЗ рд╣реБрдП рд╢реАрд░реНрд╖рдХ рдХреЗ рд╕рд╛рде рдПрдХ рдирдП рдорд╛рд░реНрдЧ рдкрд░ рдиреЗрд╡рд┐рдЧреЗрдЯ рдХрд┐рдП рдмрд┐рдирд╛ рд╢реАрд░реНрд╖рдХ рдХреИрд╕реЗ рдмрджрд▓реЗрдВ?

рдареАрдХ рд╣реИ, рдореБрдЭреЗ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдХреЛ рдмреЗрд╣рддрд░ рдврдВрдЧ рд╕реЗ рдкрдврд╝рдирд╛ рдЪрд╛рд╣рд┐рдП рдерд╛, рдпрд╣ рдмрд╕ рд╣реИ
Actions.refresh({title: 'new title'})

@greatwitenorth рдХреНрдпрд╛ рдЖрдкрдХреЛ рдХреЛрдИ рдЕрдЪреНрдЫрд╛ рд╕рдорд╛рдзрд╛рди рдорд┐рд▓рд╛?
рдореИрдВ рд░рд╛рдЬреНрдп рд╕реЗ рд╢реАрд░реНрд╖рдХ рд▓рд╛ рд░рд╣рд╛ рд╣реВрдВ, рдЗрд╕рд▓рд┐рдП рдЬрдм рднреА рд░рд╛рдЬреНрдп рдмрджрд▓рддрд╛ рд╣реИ, рдореИрдВ рдЙрд╕ рдореВрд▓реНрдп рдХреЛ рд╢реАрд░реНрд╖рдХ рдХреЗ рд░реВрдк рдореЗрдВ рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рджреГрд╢реНрдп рдЪрд╛рд╣рддрд╛ рд╣реВрдВред рдХрднреА-рдХрднреА рд▓реЛрдЧ рд╢реАрд░реНрд╖рдХ рдмрджрд▓рддреЗ рд╣реИрдВ рдФрд░ рдмреИрдХ рдмрдЯрди рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдиреЗрд╡рд┐рдЧреЗрдЯ рдХрд░рддреЗ рд╣реИрдВ, рдЙрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдореИрдВ {рд╢реАрд░реНрд╖рдХ:} рдкреИрд░рд╛рдореАрдЯрд░ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ (рдФрд░ рдмреИрдХ рдПрдХреНрд╢рди рдореЗрдВ рд╕реНрдЯреЗрдЯ-рд╡реИрд▓реНрдпреВ рдкрд╛рд╕ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ), рдпрд╛ рдХреНрдпрд╛ рдореБрдЭреЗ рдХреБрдЫ рдпрд╛рдж рдЖ рд░рд╣рд╛ рд╣реИ?

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

рд╕рдзрдиреНрдпрд╡рд╛рдж,

@JeroenNelen рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рд╕рдорд╛рди рд╕рдорд╕реНрдпрд╛ рдереА рдФрд░ рдЗрд╕реЗ рдХрдВрдкреЛрдиреЗрдВрдЯрдбрд┐рдбрдорд╛рдЙрдВрдЯ рдореЗрдВ рд░рд┐рдлреНрд░реЗрд╢ рдбрд╛рд▓рдХрд░ рдФрд░ Redux рд░рд┐рдбреНрдпреВрд╕рд░ рдореЗрдВ рд░рд╛рдЬреНрдп рдХреЛ рд╕реЗрдЯ рдХрд░рдХреЗ рд╣рд▓ рдХрд┐рдпрд╛ - рдореИрдВ рд╣рд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХрд╛рд░реНрд░рд╡рд╛рдИ рдореЗрдВ рдПрдХ Redux рдХреНрд░рд┐рдпрд╛

рддреЛ рдореВрд▓ рд░реВрдк рд╕реЗ ComponentDidMount рдореЗрдВ рдЗрд╕ рд▓рд╛рдЗрди рдХреА рддрд░рд╣ рдХреБрдЫ:

Actions.refresh({title: this.props.state.myapp.myvalue})

@jondbm рд╕реБрдЭрд╛рд╡ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рд▓реЗрдХрд┐рди рд╣рдордиреЗ рдПрдХ рдЕрд▓рдЧ рдиреЗрд╡рд┐рдЧреЗрдЯрд░ рдкрд░ рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓рд┐рдпрд╛ рд╣реИред

рд╕рдзрдиреНрдпрд╡рд╛рдж,

@JeroenNelen рдЖрдк рдЕрднреА рдХрд┐рд╕ рдиреЗрд╡рд┐рдЧреЗрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ? (рдпрджрд┐ рдЖрдкрдХреЛ рд╕рд╛рдЭрд╛ рдХрд░рдиреЗ рдореЗрдВ рдХреЛрдИ рдЖрдкрддреНрддрд┐ рдирд╣реАрдВ рд╣реИ)

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

const RouterWithRedux = connect()(Router);

export class App extends Component {

  constructor(props) {
    super(props);
  }

  render() {
    let title = '(' + this.props.basket.length + ')';
    console.log(title);
    return (
      <RouterWithRedux rightTitle={title} onRight={() => alert('All right')}>
        <Scene key="root">
          <Scene key="home" component={Main} title="Main"/>
          <Scene key="page1" component={SomePage} title="SomePage"/>
        </Scene>
      </RouterWithRedux>
    );
  }
}
App.propTypes = {
  dispatch: PropTypes.func.isRequired
};

// Wrap the component to inject dispatch and state into it
export default connect(
  state => {
    return {basket: state.basket.items}
  }
)(App);

@jaynakus рд░рд╛рдЗрдЯрдЯрд╛рдЗрдЯрд▓ рдпрд╛ рд░рд╛рдЗрдЯ рдмрдЯрди?

рд╢реАрд░реНрд╖рдХ!

рдореИрдВ рдХрд╕реНрдЯрдо рдирд╛рд╡рдмрд╛рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджреВрдВрдЧрд╛, рдЬреЛ рдХреБрдЫ рднреА рдЖрдк рдЗрд╕рдореЗрдВ рд░рд╣рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред

@jaynakus рд╢реАрд░реНрд╖ рд░рд╛рдЙрдЯрд░рд╡рд┐рдерд░реЗрдбрдХреНрд╕ рд╕реНрддрд░ рдХреЗ рдмрдЬрд╛рдп рдЕрдкрдиреЗ рд╕реАрди рдШрдЯрдХ рдореЗрдВ рдЕрдкрдирд╛ рд░рд╛рдЗрдЯрдЯрд╛рдЗрдЯ рдФрд░ рдСрдирд░рд╛рдЗрдЯ рдбрд╛рд▓рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ, рдЬреЛ рдХрд╛рдо рдХрд░ рд╕рдХрддрд╛ рд╣реИред

@jondbm рдиреЗ рдЙрдиреНрд╣реЗрдВ рд░реВрдЯ рд╕реАрди рдореЗрдВ рдбрд╛рд▓рдиреЗ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рдХрд┐рдпрд╛, рд▓реЗрдХрд┐рди рдХрдВрдкреЛрдиреЗрдВрдЯ рдореЗрдВ Actions.refresh() рдХреЛ рдХреЙрд▓ рдХрд░рдирд╛ рдЯреНрд░рд┐рдХ рдХрд┐рдпрд╛;)

const RouterWithRedux = connect()(Router);

export class App extends Component {

  constructor(props) {
    super(props);
  }

  componentWillReceiveProps(nextProps) {
    if (this.props.basket.length !== nextProps.basket.length) {
      console.log(nextProps.basket.length);
      let title = '(' + nextProps.basket.length + ')';
      Actions.refresh({rightTitle: title});
    }
  }

  render() {
    let title = '(' + this.props.basket.length + ')';
    return (
      <RouterWithRedux>
        <Scene key="root" rightTitle={title} onRight={() => alert('All right')}>
          <Scene key="home" component={Main} title="Main"/>
          <Scene key="page1" component={SomePage} title="SomePage"/>
        </Scene>
      </RouterWithRedux>
    );
  }
}
App.propTypes = {
  dispatch: PropTypes.func.isRequired
};

// Wrap the component to inject dispatch and state into it
export default connect(
  state => {
    return {basket: state.basket.items}
  }
)(App);

рдпрд╣рд╛рдВ рджреЗрдЦреЗрдВ: https://github.com/aksonov/react-native-router-flux/issues/1922

рдпрд╣ рдХрдорд╛рд▓ рд╣реИ, рдЬрдм рд╢реАрд░реНрд╖рдХ рд╕реНрд╡рд┐рдЪ рдХрд░рддрд╛ рд╣реИ рддреЛ рд╢реАрд░реНрд╖рдХ рдХреЛ рдлреАрдХрд╛/рдмрд╛рд╣рд░ рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рд╕рд╛рдл рддрд░реАрдХрд╛ рд╣реИ? рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдЬрдм рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ 100px рд╕реЗ рдЕрдзрд┐рдХ рд╕реНрдХреНрд░реЙрд▓ рдХрд░рддрд╛ рд╣реИ рддреЛ рдореЗрд░реЗ рдкрд╛рд╕ рд╢реАрд░реНрд╖рдХ рд╕реНрд╡рд┐рдЪрд┐рдВрдЧ рд╣реЛрддрд╛ рд╣реИред рд╕рдВрдХреНрд░рдордг рдХреЛ рдлреАрдХрд╛ рдХрд░рдирд╛ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ред рдЪреАрдпрд░реНрд╕ред

@greatwitenorth рдЖрдкрдХрд╛ рд╕рдЯреАрдХ рдЙрдкрдпреЛрдЧ рдорд╛рдорд▓рд╛ рдХреНрдпрд╛ рд╣реИ?
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдпрджрд┐ рдЖрдк рдХреБрдВрдЬреА view2 рд╕рд╛рде рдПрдХ рджреГрд╢реНрдп рдореЗрдВ рдиреЗрд╡рд┐рдЧреЗрдЯ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рддреЛ рдЖрдк рдЗрд╕ рддрд░рд╣ рдХреЗ рдкреНрд░реЛрдк рдХреЗ рд╕рд╛рде рд╢реАрд░реНрд╖рдХ рд╕реЗрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ

```рдЬреЗрдПрд╕
Actions.view2({рд╢реАрд░реНрд╖рдХ: 'рдореЗрд░рд╛ рдирдпрд╛ рд╢реАрд░реНрд╖рдХ'})

рд╣рдо рдЗрд╕реЗ рд╕реЗрдЯрдЕрдк рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдХреИрд╕реЗ рдПрдХреНрд╕реЗрд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?

рдЕрдЧрд░ рдореЗрд░реЗ рдкрд╛рд╕ рдЗрд╕ рддрд░рд╣ рдХреА рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╣реИ:

<Router>
                    <Scene key="root" navBar={NavBar}>
                        <Scene
                            hideNavBar
                            key="login"
                            component={Login}
                            initial
                        />

                        <Scene drawer
                               drawerPosition="right" drawerWidth={300}
                               key="task"
                               contentComponent={DrawerView}
                               drawerIcon={drawerIcon}
                               rightButtonImage="menu"
                               onRight={() => {
                                   Actions.drawerOpen()
                               }} hideNavBar
                        >

                            <Scene key="taskInner"
                                   leftButtonImage="arrow-back"
                                   component={TaskView}
                                   onLeft={() => {
                                       Actions.popTo('tasksList')
                                   }}
                            />
                        </Scene>

                    </Scene>
</Router>

рдлрд┐рд░ Actions.task({ title: 'My New Title' }) рдпрд╛ Actions.refresh({title: "My New Title"}) рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ред рдПрдХ рджрд░рд╛рдЬ рд╣реЛрдиреЗ рдкрд░ рд╢реАрд░реНрд╖рдХ рдХреИрд╕реЗ рд╕реЗрдЯ рдХрд░реЗрдВ рдпрд╛ рдХреБрдЫ рдЧреБрдг рдХреИрд╕реЗ рднреЗрдЬреЗрдВ?

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

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

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

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

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

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

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