Redux基础

2019-03-30  本文已影响0人  冫改网名

Redux的产生

要理解redux的产生,先要说说MVC模式。每一个view(页面)对应一个model,并由对应的control控制。页面离不开数据的支持,随着单页应用的普及,技术实现的复杂性,页面的状态state管理(用户输入的数据、标签的选中状态、)日趋复杂。

管理不断变化的 state 非常困难。如果一个 model 的变化会引起另一个 model 变化,那么当 view 变化时,就可能引起对应 model 以及另一个 model 的变化,依次地,可能会引起另一个 view 的变化。直至你搞不清楚到底发生了什么。state 在什么时候,由于什么原因,如何变化已然不受控制。
Redux的产生则是为了方便开发者管理state,并保持应用的历史状态(返回功能),实现应用状态的可预测。

Redux的原则

Redux基础概念

state:页面中的状态,类似一个Object
Action:单纯的JavaScript队形,用于更改state中的值
reducer:连接state和Action的函数

Redux的使用方法

页面state:

this.state = { name: 'bamboo', text:'耐得住寂寞才能守得住繁华' }

action:

{
  type: Change,
  text: 'change the text'
}

reducer:接收一个state和一个action,返回新的state

function Change(state, action) {
  if (action.type === 'Chanage') {
    return { name: 'bamboo', text: '偷懒一时爽,一直偷懒一直爽' };
  } else return state;
  // 遇到未知action时,返回原有的state
}

页面中有一个按钮onClick事件触发Change这个action,改变该页面的state,重新渲染页面,页面内容text变化。

上一篇下一篇

猜你喜欢

热点阅读