随着时代的进步,人们对单一页面的要求日渐复杂化,从过去的静态页面,到後来需要包括服务器回应和快取的资料,以及本机建立而尚未回传到服务器等资料,为了完成这些需求,需要一个更复杂的State去管理,而Redux便是为了解决此问题出现的工具,它藉由强加某些限制在更新发生的方式和时机上,让 state的变化更有可预测性。
console.log(store.getState())
/* Prints
{
visibilityFilter: 'SHOW_ALL',
todos: [
{
text: 'Consider using Redux',
completed: true,
},
{
text: 'Keep all state in a single tree',
completed: false
}
]
}
*/
2.State 是唯读的
唯一一个改变state的方式是发出一个action,action为一个描述发生什麽事的物件。集中管理并储存所有发生变化的action,之後debug或测试时可以用。
store.dispatch({
type: 'COMPLETE_TODO',
index: 1
})
store.dispatch({
type: 'SET_VISIBILITY_FILTER',
filter: 'SHOW_COMPLETED'
})
3.变更被写成 pure function
若要指定store用哪个action来改变的话,必须写 pure reducer。reducer是一个pure function,它会先取得先前的 state 和一个action,并回传下一个state。
前一篇提到可以更改 session name 也可以标注 pass/fail 接着就可以将昨天提到的...
前言 在这个蔬菜是有机的、水果都会甜、衣服耐洗不缩水、满街百年创始老店、车子很省油、房…的社会当中,...
当加入一个 line bot 的时候,通常 bot 会传送一个欢迎讯息给使用者,而此设定除了可以透过...
今天先来进行呼叫永丰API 串接永丰API 按照范例测试,主要针对建立订单进行实作,查询订单等API...
为何选择Python ?而不是其他的语言。 每个程序语言都有属於它们的专长,Python是一种高阶语...