Reactjs 反应本机路由器流量:onLeft场景
我正在尝试为场景添加onLeft employeeEdit场景,当用户从场景返回时,如果用户不希望对当前选定的员工进行更改,他们将能够返回到员工列表,并且在使用类型“reset”进行添加时,字段将清空,就像保存更改一样Reactjs 反应本机路由器流量:onLeft场景,reactjs,react-native,ecmascript-6,react-native-router-flux,Reactjs,React Native,Ecmascript 6,React Native Router Flux,我正在尝试为场景添加onLeft employeeEdit场景,当用户从场景返回时,如果用户不希望对当前选定的员工进行更改,他们将能够返回到员工列表,并且在使用类型“reset”进行添加时,字段将清空,就像保存更改一样 在这种情况下,onLeft似乎不起作用,因为函数实际上没有被执行 <Router sceneStyle={{ paddingTop: 65 }}> <Scene key="auth"> <Scene key="login" c
在这种情况下,onLeft似乎不起作用,因为函数实际上没有被执行
<Router sceneStyle={{ paddingTop: 65 }}>
<Scene key="auth">
<Scene key="login" component={LoginForm} title="Please Login" initial />
</Scene>
<Scene key="main">
<Scene
onRight={() => Actions.employeeCreate()}
rightTitle="Add"
key="employeeList"
component={EmployeeList}
title="Employees"
initial
/>
<Scene
key="employeeCreate"
component={EmployeeCreate}
title="Create Employee"
/>
<Scene
onLeft={() => Actions.employeeList({ type: 'reset' })}
key="employeeEdit"
component={EmployeeEdit}
title="Edit Employee"
/>
</Scene>
</Router>
更长的方法
使用componentWillUnmount,这在离开组件(即EmployeeEdit)时有效
componentWillUnmount () {
this.props.employeeInitial();
}
这就可以称之为gigInitial的道具;具有将返回类型为“EMPLOYEE_INITIAL”的分派语句的操作
export const employeeInitial = () => {
return (dispatch) => {
dispatch({ type: EMPLOYEE_INITIAL });
};
};
在EmployeeFormReducer中,它将返回初始状态
case EMPLOYEE_INITIAL:
return INITIAL_STATE;
你有什么错误吗?employeeList函数在哪里?嗨@AdamPatterson,没有错误。似乎onLeft中没有任何东西被调用,甚至连console.log都没有,leftTitle无法设置等。查看控制台日志中没有错误,右边的任何东西都可以工作,但左边没有。将导航栏左按钮的下列任一项应用于嵌套场景似乎不起作用。再次感谢!Actions.pop能解决你的问题吗?看来onLeft对我不起作用,你建议把Actions.pop放在哪里?谢谢,我不确定。我觉得我需要更多地了解您的代码,以了解可能发生的情况。我不确定Actions.pop是否允许您传递属性,但您可能可以将Actions.employeeList{type:'reset'}替换为Actions.pop以返回。我根据API尝试了所有选项,我认为这些选项可以控制左标题按钮,但对我来说都不起作用。你能找到另一个解决办法吗?