1
A
答えて
1
:
ルータ
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' });
});
};
};
これは私が離れてから移動するわけではない画面です。 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' });
});
};
};
関連する問題
- 1. ボタンへのバインドリレーコマンドボタンまたはコードボタンへのバインド
- 2. 実行C#のコードボタンがブレンドのVisual Studio 2015
- 3. は、私は私のイメージは
- 4. 私は、私は、次のよ
- 5. 私はWordpressのページ私は
- 6. は、私は私のSqlCommandオブジェクト
- 7. 「prepareRendererは、」私は私のcustomJTable
- 8. は、私は私のmod_rewrite
- 9. は、私は私のスクリプトで
- 10. 私は私のMIDlet
- 11. 私は私のプロジェクト
- 12. 私は私のコード
- 13. 私は私のプロジェクト
- 14. 私は私のデータベーススキーマ
- 15. 私は私のメッセージ
- 16. 私は私のコード
- 17. は、私は私はsesiionはjQueryの - AJAX
- 18. は、私は私のクラスでは、私のArrayList [アンドロイド]
- 19. 私のdivは私のピクセル
- 20. 私は私のAndroidのメーカー
- 21. ++、それは私のメイクファイルでは、私は
- 22. は、私は私のC#は[OK]を
- 23. は、私は私のファイルのデータ
- 24. は、私は私のデバイスのiOS 4.2.1
- 25. は、私は私のコードのjQuery
- 26. 私のアプリは、私はweb.configファイルで私のアプリの
- 27. 私のアプリケーションは、私は私のマスターページのウィッヒに法を得た
- 28. タスクスケジューラ - 私は私のコンピュータ
- 29. 私は私の言語
- 30. 私は私の.gitlab-ci.ymlで
これは機能しました。 Actions.Main()にActions.employeeCreateを変更するだけで作業しました。しかし、私の質問は、なぜですか? LOL本当にこのJaredを見ていただきありがとうございます。あなたは紳士で学者です! –
あなたが行くべきであれば、あなたが反応するためにあなたはあなたにreact-native-router-fluxを伝える必要があるからです。 authとmainの2つのビンがあります。 Actions.main.employeeList()を実行することもできます。メインに送信するのは、デフォルトではemployeeListになります。なぜなら、メインにリストされている最初のシーンだからです。 2.それは、そのビン内の最初のシーンとしてそれを指定する「初期」小道具を持っています。あなたがemployeeListではないメインの別のシーンに移動したいのであれば、Actions.main.whateverYourKeyForThatComponentIs()を指定する必要があります。 –
私はActions.main.employeeList()を試しましたが、アプリケーションはナビゲートしませんが、エラーです。私は働いていると思うのは、ルータが「メイン」シーンを認識してそこに連れて行っていることです。従業員リストが最初のシーンか最初のシーンなので、それが終わりです....... –