【发布时间】:2019-11-13 16:38:52
【问题描述】:
我只是玩了一下颤振,函数调用中的泛型让我感到困惑。 考虑下面的调用:
final signinReducer = combineReducers<SignInState>([
TypedReducer<SignInState,ValidateEmailAction>(_validateEmail),
TypedReducer<SignInState,ValidatePasswordAction>(_validatePassword),
TypedReducer<SignInState,ValidateLoginFields>(_validateLoginFieldsAction),
TypedReducer<SignInState,ChangeLoadingStatusAction>(_changeLoadingStatusAction),
TypedReducer<SignInState,EmailErrorAction>(_emailErrorAction),
TypedReducer<SignInState,PasswordErrorAction>(_passwordErrorAction),
TypedReducer<SignInState,SaveTokenAction>(_saveToken),
TypedReducer<SignInState,ConfirmForgotPasswordAction>(_confirmCodeAction),
TypedReducer<SignInState,CheckTokenAction>(_checkTokenAction),
TypedReducer<SignInState,ClearErrorsAction>(_clearErrorsAction),
TypedReducer<SignInState,ChangeScreenStateAction>(_changeScreenStateAction),
]);
...
SignInState _validateEmail(SignInState state, ValidateEmailAction action){
return state.copyWith(email: action.email);
}
SignInState _validatePassword(SignInState state, ValidatePasswordAction action) =>
state.copyWith(password: action.password);
....
那么combineReducers<SignInState> 中的泛型表示什么?
同样最令人困惑的是这种语法:TypedReducer<SignInState, ValidateEmailAction>(_validateEmail)。第二种ValidateEmailAction在这里做什么?
【问题讨论】:
标签: flutter dart flutter-redux