我的代码是here
我正在接受course
我在点击“创建”按钮后添加了一个导航回员工列表的操作,但我没有导航回来。你能帮我理解我可能做错了什么吗?
以下是动作创建者文件:
import firebase from 'firebase';
import Actions from 'react-native-router-flux';
import {
EMPLOYEE_UPDATE,
EMPLOYEE_CREATE
} from './types';
export const employeeUpdate = ({ prop, value }) => {
return {
type: EMPLOYEE_UPDATE,
payload: { prop, value }
};
};
export const employeeCreate = ({ name, phone, shift }) => {
const { currentUser } = firebase.auth();
return (dispatch) => {
firebase.database().ref(`/users/${currentUser.uid}/employees`)
.push({ name, phone, shift })
.then(() => {
dispatch({ type: EMPLOYEE_CREATE });
Actions.employeeList({ type: 'reset' });
});
};
};
这是我不会离开的屏幕:
答案 0 :(得分:1)
我让这个工作:
Router.js:
const RouterComponent = () => {
return (
<Router sceneStyle={{ paddingTop: 0 }}>
<Stack key="root" hideNavBar="true" >
<Scene key="auth">
<Scene key="login" component={LoginForm} title="Please Login" />
</Scene>
<Scene key="main">
<Scene
key="employeeList"
onRight={() => Actions.employeeCreate()}
rightTitle="Add"
component={EmployeeList}
title="Employees List"
initial
/>
<Scene key="employeeCreate" component={EmployeeCreate}
title="Create Employee" />
<Scene key="employeeEdit" component={EmployeeEdit} title="Edit
Employee" />
</Scene>
</Stack>
</Router>
);
};
EmployeeActions.js:
export const employeeCreate = ({ name, phone, shift }) => {
const { currentUser } = firebase.auth();
return (dispatch) => {
firebase.database().ref(`/users/${currentUser.uid}/employees`)
.push({ name, phone, shift })
.then(() => {
dispatch({ type: EMPLOYEE_CREATE });
Actions.main({ type: 'reset' });
});
};
};