【学习打卡】第9天 实战旅游项目/Vue改写
课程名称:[React 17/18 系统精讲 结合TS打造旅游电商平台]
课程章节: 理解React/redux设计模式
主讲老师:阿莱克斯
课程内容:
- 【概念理解】什么是redux?
- 创建state
- 【访问state】获取store数据
课程收获:
设计模式
- MVC MVVM MV* Redux
- redux npm install redux
- 剥离组件数据 state
- 统一存放在store中
- 组件订阅store获得数据
- store同步推送数据更新
- redux 工作流
- 创建 store Reducer 初始化数据 react组件订阅store store会推送数据 更改数据通过Actions分发传递数据给Reducer 更新数据给store
- redux npm install redux
为类组件使用router6支持
import { useNavigate, NavigateFunction } from "react-router-dom";
import React from "react";
export interface RouteComponentProps {
navigate: NavigateFunction;
}
export const withRouter = (Component: React.FC) => {
// 获取类组件的参数 变成函数式
return (props: any) => {
const navigate = useNavigate();
return <Component navigate={navigate} {...props} />;
};
};
初始化store
import { createStore } from "redux";
const store = createStore(languageReducer);
继承接口 达到复用
// 使用继承
interface State extends LanguageState {}
通过循环和三元运算符进行使用
<Dropdown.Button
overlay={
<Menu
items={this.state.languageList.map((m) => {
return { key: m.code, label: m.name };
})}
/>
}
icon={<GlobalOutlined />}
style={{ marginLeft: 15 }}
>
{this.state.language === "zh" ? "中文" : "English"}
</Dropdown.Button>
class写法和fc写法 有点绕了 哈哈
点击查看更多内容
1人点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦