写一个简单的 redux

1.在src中创建一个store文件夹
在这里插入图片描述
2.创建一个index.ts 代码如下:

// 创建 store 仓库

import { createStore } from 'redux' // 引入 createStore 方法
import reducer from './reducer' // 创建好后引入

const store = createStore(reducer) // 创建数据存储仓库

export default store

3.创建一个reducer.ts 代码如下:

// 管理仓库能力模块

const defaultState = {
  pane: [
    { title: 'Home', content: 'Home', key: '1' },
    { title: 'Tab 1', content: 'Content of Tab 1', key: '2' },
    { title: 'Tab 2', content: 'Content of Tab 2', key: '3' }
  ] // 这就相当于你给Store里增加了一个新的数据项
} // 默认数据
// state 是整个项目中需要管理的数据信息, 这里我们没有数据, 所以用空对象来表示
export default (state = defaultState, action: any) => { // 就是一个方法函数
  return state
} 

4.使用

import store from '../../../store'

在 constructer 里面:

const state = store.getState()
console.log(state)

可以打印出我们写入的数据

5.向redux里面的pane 加一项数据
1⃣️ 要向定义一下我们即将要加进去的值在这里插入图片描述
2⃣️ 在要使用的地方引入store 重新赋值就可以了
![在这里插入图片描述](https://img-blog.csdnimg.cn/20190822171140670.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80Mzk5NjA2MQ==,size_16,color_FFFFFF,t_70
3⃣️ 这时我们会发现当我们要 使用的时候 会报错 原因是因为我这里使用的是typescript , 如果你没有使用 ts, 而是用的js, 就不会出现这个问题
解决办法:
我们在reducer.ts 里面声明 一下 我们放进去的数据类型
? 代表不强制 传递此参数使用
| 代表只允许使用你规定的
如下图 Array< item > 代表不强制使用 item 里面的每一项
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值