type integrety

This commit is contained in:
Tommy Parnell
2017-12-17 14:59:16 -05:00
parent 14eba3ba51
commit fe4a35e674
2 changed files with 8 additions and 5 deletions

1
.gitignore vendored
View File

@@ -1,2 +1,3 @@
node_modules
dist
.vscode

View File

@@ -9,18 +9,20 @@ import {AppState} from '../models/AppState'
import { Dispatch, connect } from 'react-redux';
import * as redux from 'redux';
const mapStateToProps = (state : AppState) =>
const mapStateToProps = (state : AppState) : IBaseLoginProps =>
{
return {loginState: state.login};
}
const mapDispatchToProps = (dispatch: any) => {
const mapDispatchToProps = (dispatch: (Action)=>any) : IBaseLoginDispatches => {
return {
onLogin:(loginState: LoginState) => dispatch(actions.login(loginState)),
onLogOut:() => dispatch(actions.logout())
}
}
interface LoginProps {loginState: LoginState, onLogin: (loginState: LoginState)=>any, onLogOut: ()=>any }
class loginContainer extends React.Component<LoginProps,{}>{
interface IBaseLoginProps {loginState: LoginState}
interface IBaseLoginDispatches {onLogin: (loginState: LoginState)=>any, onLogOut: ()=>any}
interface ILoginProps extends IBaseLoginProps,IBaseLoginDispatches {}
class loginContainer extends React.Component<ILoginProps,{}>{
constructor(props: any){
super(props, {isLoggedIn: false, displayName: '', uid: null})