个人见解

实用Redux框架的目的是摆脱状态机的束缚,方便数据交互多的情况下实时刷新数据。

1.首页拥有一个Action(本文语法基于ES6)

例如:export let LOGIN = 'LOGIN' //这里的LOGIN你可以当作ID来理解,唯一确定,需要更改对应数据时,调用对应的Action(这里即是LOGIN)就好。

2.用我的话说就是你要有一个实体的类或者说数据吧,反正就是你需要操作的对象。也就是文档中的Reducers。

例如:import * as types from '../Constant/actionType';const LCState = {

    name:1000
}
let Login = (state = LCState, action) => {
switch (action.type)
{
case types.LOGIN:
return Object.assign({}, state,{
name:action.name
});
default:
return state
}
}
export default Login;
这里解释下:
1.首先import导入了所有的Action,我们1当中提到的LOGIN就是其中的一个,我们需要拿到它所有导入了文件,这里的types就是导入的所有的Action。
2.下面是实体对象,即LCState,其中有一个属性是name,随意写的,根据你需要自己改吧,对应值是1000。
3.按我的理解第三步是书写导出的函数,函数里面要表明你需要更改的实体对象,区分的话用的上面提到的Action,即LOGIN(这个是实体的唯一标志)。下面文档大概意思是说对原来的数据做了拷贝,后面我们的操作是对拷贝的数据进行了更改,并未改变本身State的数据。然后如果找不到对应类型就返回原来的数据。
4.导出函数,表示对外开放了吧。

3.响应事件,即改变数据的实质原因,先贴代码吧。
import * as allTypes from '../Constant/actionType' //同上,我们需要拿到唯一标记的Action
//这里没什么说明,导出函数备用吧,这里就是实际操作是调用的改变原始数据的方法
export let login_action = () => {
return{
type:allTypes.LOGIN,
name:1002,
}
}
4.组件或者说视图吧,能看到实际效果的就是这个了
import React, { Component } from 'react';
import {
StyleSheet,
Text,
View,
    TouchableOpacity,
Dimensions,
Alert
} from 'react-native';
import { connect } from 'react-redux'; //导入connet,下面关联响应的属性和方法需要用到
import { login_action } from '../../Actions/loginAction'
class LoginScreen extends Component {
componentDidMount(){
const {login_action} = this.props;
}
render() {
const {login_action,LoginData} = this.props;
let LoginAction = ()=>{ //点击事件方法
login_action() //调用了上面导入的
login_action
        }
return (
<View style = {{flex:1,backgroundColor:'#d81e06'}}>
<TouchableOpacity onPress = {LoginAction}> //点击事件调用
<Text style ={{top:60,left:30}}>登录</Text>
</TouchableOpacity>
{LoginData.name === 1000 ?<Text style ={{top:90,left:30}}>尚未登录</Text> : <Text style ={{top:90,left:30}}>登录成功</Text> } //三目运算让你看到下效果

</View>
)
}

}
//状态关联:这个是关键吧
const mapStateToProp = (state) =>{
let {Login} = state
return {
LoginData:state.Login
}
}
const mapDispatchToProp = {
login_action
}
//这个主要是要了解connet的用法,注意前两个参数必须是函数
export default connect(mapStateToProp,mapDispatchToProp)(LoginScreen)
这里就自己的学习做个记录,希望能帮到和我一样苦逼了很久了person。我也是大神指点了下才回用的,基本也了解了用法。
5.补充一句,记得加入Store,因为Store是唯一的,所以你要合并你的Reducers。