如何在 Flutter 中将参数传递给动作
How to pass parameters to action in Flutter
我有这个动作
Future<void> signUpAction(Store<AppState> store) async {
try {
// ...
} catch (e) {
// ..
}
}
然后我这样发送
store.dispatch(signUpAction);
现在,如果我想传递两个参数,我该怎么做?因为那里已经有一个参数了。
我试过了
Future<void> signUpAction(Store<AppState> store, email, password) async {
try {
// ...
} catch (e) {
// ..
}
}
但是如果我这样做的话,然后在调度时
store.dispatch(signUpAction("some@email.com", "somEPa55word!"));
上面说singUpAction需要3个参数,所以我不太清楚怎么只传这两个
谢谢
分派方法需要特定的签名。如果您的方法不完全具有该签名,您可以即时创建一个与签名匹配的 anonymous function。
在这种情况下,由于您的方法不仅需要商店,还需要电子邮件和密码:
store.dispatch((x) => signUpAction(x, "some@email.com", "somEPa55word!"));
我有这个动作
Future<void> signUpAction(Store<AppState> store) async {
try {
// ...
} catch (e) {
// ..
}
}
然后我这样发送
store.dispatch(signUpAction);
现在,如果我想传递两个参数,我该怎么做?因为那里已经有一个参数了。
我试过了
Future<void> signUpAction(Store<AppState> store, email, password) async {
try {
// ...
} catch (e) {
// ..
}
}
但是如果我这样做的话,然后在调度时
store.dispatch(signUpAction("some@email.com", "somEPa55word!"));
上面说singUpAction需要3个参数,所以我不太清楚怎么只传这两个
谢谢
分派方法需要特定的签名。如果您的方法不完全具有该签名,您可以即时创建一个与签名匹配的 anonymous function。
在这种情况下,由于您的方法不仅需要商店,还需要电子邮件和密码:
store.dispatch((x) => signUpAction(x, "some@email.com", "somEPa55word!"));