内容简介:这就意味着如果有一个组件脱离了这颗树, 那么这个组件将无法与
react-redux 通过 context 将整个项目变成了一颗 "组件树", 每个组件变成了这棵树上的节点
这就意味着如果有一个组件脱离了这颗树, 那么这个组件将无法与 store 通信
rims 架构下, 整个项目看起来像是一个圆环, 无论是子组件或父组件, 他们直接与圆环中心相关联
rims 提供与 react-redux 相同用法的 connect .
rims 即插即用 甚至可以与原有使用 react-redux 的项目共存(注意: 同一组件不要同时使用二者的 connect ), 可将 store 直接传入 createConnect , 只维护一个 store .
Quick Start
Installation
npm install --save rims 复制代码
or
yarn add rims 复制代码
Create store and connect
// createConnect.js
import { createStore } from 'redux';
import reducers from './reducers';
import { createConnect } from 'rims';
const store = createStore(reducers);
export default createConnect(store);
复制代码
需要创建一个新的文件, 用于创建 store 和 createConnect
创建 store , 我们仅替换了 react-redux , 好消息是若你此前配置过 store , 那么 store 不需要变动, 仅仅导出 createConnect 即可. 当然这也意味着我们仍然可以用 redux 的插件: redux-thunk redux-logger 等.
Connect Components
import connect from './createConnect';
@connect(state => state)
class App extends React.Component{
// ...
}
复制代码
多页面应用状态共享
通过状态数据持久化实现, 使用 redux-persist 实现状态数据持久化.
// createConnect.js
import { createStore } from 'redux';
import { persistStore, persistReducer } from 'redux-persist';
import reducers from './reducers';
import { createConnect } from 'rims';
const persistConfig = {
key: 'root',
storage: storageSession,
};
const persistedReducer = persistReducer(persistConfig, reducers);
const store = createStore(persistedReducer);
export default createConnect(store);
复制代码
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- Tor的高级使用方式
- 使用 AJP 方式配置反向代理
- LiveData基础使用方式+工作原理(上篇)
- 使用 C# 代码创建快捷方式文件
- 使用 Golang Timer 的正确方式
- 用 gopher 的方式使用 panic
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
深入浅出Struts 2
Budi Kuniawan / 杨涛、王建桥、杨晓云 / 人民邮电出版社 / 2009-04 / 59.00元
本书是广受赞誉的Struts 2优秀教程,它全面而深入地阐述了Struts 2的各个特性,并指导开发人员如何根据遇到的问题对症下药,选择使用最合适的特性。作者处处从实战出发,在丰富的示例中直观地探讨了许多实用的技术,如数据类型转换、文件上传和下载、提高Struts 2应用的安全性、调试与性能分析、FreeMarker、Velocity、Ajax,等等。跟随作者一道深入Struts 2,聆听大量来之......一起来看看 《深入浅出Struts 2》 这本书的介绍吧!