世界上最伟大的投资就是投资自己的教育
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程
63 个视频
Antd Pro 是国内最流行的前端后台框架,使用它可以轻易搭建一个超级强大的后台,满足各种企业级需求,本套课程会入门级层次来讲解 Ant Desgin Pro,让你逐渐了解它,并使用它搭建一个完整的后台,满足公司需求,本项目基于 Ant Design Pro v4 & Ant Design v3,是国内仅有的讲 antd pro v4 的视频教程。
畅销
8 小时 14 分钟高级前后端分离Ant Design
v5 ts antd pro 课程
最终代码:https://github.com/hfpp2012/hello-antd-pro-v4
你会学到什么知识?
- antd 入门
- antd 修改 Logo, Footer 等
- 了解布局,及使用
- 使用区块
- 区块与菜单
- 使用 umi 插件
- 国际化(关闭国际化)
- 注册功能(后端原理)
- dva 相关知识
- dva 结合 antd 从零开始写页面
- antd Form(表单组件)
- 手机验证码使用及原理
- 图形验证码使用及原理
- 错误处理(状态码处理)
- 本地持久化
- json web token 使用
- 登入登出功能
- umi-request 使用
- 请求外部服务器地址处理
- umi-request 异常处理
- 菜单权限控制
- 权限安全性及处理
- 实战视频管理(各种坑处理)
Ant design pro v4 & ant design v3
https://www.qiuzhi99.com/playlists/react-antd-admin.html Ant Design Pro 企业级后台实战(73 个视频)
https://www.qiuzhi99.com/playlists/umi.html 轻松学 UmiJS 视频教程(35 个视频)
https://www.qiuzhi99.com/movies/umi/733.html 轻松学 UmiJS 视频教程 #25 如何快速安装区块
https://www.qiuzhi99.com/playlists/typescript.html 诱人的 TypeScript 视频教程(69 个视频)
https://github.com/ant-design/ant-design-pro
https://github.com/hfpp2012/redux-login
https://github.com/hfpp2012/hello-antd-pro
https://code.visualstudio.com/
https://juejin.im/post/5b99c9ece51d450e51625630
# 管理员账号与密码
hfpp2012 12345678
npm set registry https://r.npm.taobao.org # 注册模块镜像
npm set disturl https://npm.taobao.org/dist # node-gyp 编译依赖的 node 源码镜像
## 以下选择添加
npm set sass_binary_site https://npm.taobao.org/mirrors/node-sass # node-sass 二进制包镜像
npm set electron_mirror https://npm.taobao.org/mirrors/electron/ # electron 二进制包镜像
npm set puppeteer_download_host https://npm.taobao.org/mirrors # puppeteer 二进制包镜像
npm set chromedriver_cdnurl https://npm.taobao.org/mirrors/chromedriver # chromedriver 二进制包镜像
npm set operadriver_cdnurl https://npm.taobao.org/mirrors/operadriver # operadriver 二进制包镜像
npm set phantomjs_cdnurl https://npm.taobao.org/mirrors/phantomjs # phantomjs 二进制包镜像
npm set selenium_cdnurl https://npm.taobao.org/mirrors/selenium # selenium 二进制包镜像
npm set node_inspector_cdnurl https://npm.taobao.org/mirrors/node-inspector # node-inspector 二进制包镜像
npm cache clean --force # 清空缓存
npm set selenium_cdnurl=http://npm.taobao.org/mirrors/selenium
npm set node_inspector_cdnurl=https://npm.taobao.org/mirrors/node-inspector
{
"editor.tabSize": 2,
"emmet.triggerExpansionOnTab": true,
"editor.formatOnSave": true,
"window.zoomLevel": 0,
"editor.lineHeight": 0,
"editor.fontSize": 13,
"terminal.integrated.fontSize": 13
}
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #1 开始玩起来07:43
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #2 了解项目源码并尝试修改07:21
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #3 继续了解项目源码并修改代码07:24
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #4 如何修改 footer 及其原理08:15
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #5 关于 footer 和 layout07:27
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #6 如何好好利用 ant-design-pro-layout10:09
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #7 如何下载和使用区块07:17
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #8 为什么下载区块后会添加菜单09:10
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #9 umi-plugin-pro-block-ts08:19
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #10 删除国际化 i18n part 109:21
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #11 删除国际化 i18n part 206:51
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #12 用户注册的 block05:46
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #13 让用户注册工作起来07:56
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #14 注册的流程理解09:10
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #15 准备好 API10:20
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #16 对接好后端的注册功能15:34
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #17 表单的前端验证与后端验证06:51
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #18 后端的数据验证与前端的结合17:51
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #19 自己写一个真实项目的注册页面 - 手机验证码 - 图形验证码03:24
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #20 注册表单07:43
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #21 表单与 TypeScript06:15
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #22 注册表单 - connect - dispatch11:20
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #23 实现注册功能并显示验证出错信息09:37
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #24 详解注册页面手机验证码07:09
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #25 注册页面手机验证码处理完成06:07
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #26 手机验证码的原理(后端)04:07
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #27 注册页面显示图形验证码10:38
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #28 注册页面图形验证码的原理09:54
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #29 注册页面提交失败时图形验证码重新刷新05:33
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #30 注册页面成功跳转10:41
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #31 用 localStorage 存储 jwt05:16
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #32 重构代码,封装 request05:08
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #33 登录页面09:01
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #34 完成登录07:07
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #35 登录权限验证 - 发送请求带上头信息09:21
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #36 登录权限验证 - umi-request 异常处理程序10:43
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #37 解决 umi-request 的 extend 关于 headers 的问题07:43
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #38 显示个人用户信息04:20
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #39 菜单权限控制显示08:08
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #40 通过修改 getAuthority 方法利用 jwt 显示正确的菜单权限07:52
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #41 刷新当前权限04:19
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #42 其他的权限方法 - 从远程服务器获取菜单08:11
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #43 权限验证的安全性(准备进入下一阶段)10:04
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #44 实战 - 视频管理02:41
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #45 实战 - 视频管理 - 视频列表08:01
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #46 实战 - 视频管理 - 视频列表 - 发送请求获得远程的数据07:12
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #47 实战 - 视频管理 - 视频列表 - 显示列表数据06:46
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #48 实战 - 视频管理 - 视频列表 - 修复列表数据06:06
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #49 实战 - 视频管理 - 视频列表 - 搜索列表05:34
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #50 实战 - 视频管理 - 搜索 - 使用 qs 处理 umi-request 提交参数的问题06:27
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #51 实战 - 视频管理 - 搜索 - 处理 moment 的时间问题05:01
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #52 实战 - 视频管理 - 完成分页07:53
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #53 实战 - 视频管理 - 添加视频10:46
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #54 实战 - 视频管理 - 添加视频 - 发送请求08:11
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #55 实战 - 视频管理 - 添加视频 - 处理完成06:44
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #56 实战 - 视频管理 - 错误处理09:49
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #57 实战 - 视频管理 - 详情页面07:14
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #58 实战 - 视频管理 - 完成详情页面11:20
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #59 实战 - 视频管理 - 删除视频04:24
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #60 实战 - 视频管理 - 添加视频04:31
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #61 实战 - 视频管理 - 添加视频 part 208:44
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #62 实战 - 视频管理 - 添加视频 part 310:29
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #37 解决 umi-request 的 extend 关于 headers 的问题
Pro07:43
2075 次点击
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #40 通过修改 getAuthority 方法利用 jwt 显示正确的菜单权限
Pro07:52
1152 次点击
UmiJS & TypeScript & Ant Design Pro v4 从零开始实战教程 #50 实战 - 视频管理 - 搜索 - 使用 qs 处理 umi-request 提交参数的问题
Pro06:27
1292 次点击
▬▬▬▬▬▬ 联系我 👋 ▬▬▬▬▬▬
微信:qiuzhi99pro
b 站:https://space.bilibili.com/31152817
知乎:https://www.zhihu.com/people/rails365
Youtube:https://www.youtube.com/channel/UCA-Jkgr40A9kl5vsIqg-BIg
© 汕尾市求知科技有限公司 | Rails365 Gitlab | 知乎 | b 站 | csdn
粤公网安备 44152102000088号 | 粤ICP备19038915号
Top
焦急的等待着更新
这个课程说明时候开始啊?
我也想问啊,老师啥时候更新啊
焦急的等待着更新,+1 希望老师 主要先更新这个,进行学习.
尽快更这个
Ant Design Pro4 超级多问题,要是我就会等他修复半年 稳定了再上生产环境
还有登录页的问题,看 issues 官方的回答
给个地址我看下,这个问题的
https://github.com/ant-design/ant-design-pro/issues/4669
求更
过几天就开始更这个哈
期待
老师,能否讲讲如何做自定义组件呢?我想做一个图片验证码组件,用于登录页面。谢谢。
简单,一个 Input 框,一个 Img 标签就可以了,Img 标签每次点击重新请求图片验证码就可以了。
我是用原生 Captcha 组件改改的
感谢了,兄弟
接入后端的 api,登录成功后转发到首页拉取用户信息时,headers 没有默认带上 token 导致 401,但再次刷新首页又可以了,不知道老师知道原因不?
把 token 存 cookies 吧
但改成跳转的方式就可以,感觉是 routerRedux.replace 的问题
待会试试存 cookie,感觉也会是同样的问题,token 应该是成功存了的.
登录成功后,用 routerRedux.replace 去转发,这段的 headers 没有刷新 authorization 的值
调试的结果是 location.href 会触发这个文件执行,这样就会把存的 token 重新赋值给 authorization,
但 routerRedux.replace 不会触发这边,所以 authorization 的值还是刚进登录页面的空值,难道要在 routerRedux.replace 转发前去触发这个文件执行吗?
第一套有提到存到 localstorage 结合 antd 就有这个问题的,要么换成 axios 等其他工具 发送请求 或 存到 cookies 试下的,存到 localstorage 不是最佳选择
没注意到,我试试 cookie 看行不行吧
嗯,你可以试试
换成 cookie 还是一样的效果,用 location.href 跳就可以。。。
老师能不能说下下 Pro v4 这个课大概什么时候更完
不好预估呀
请问一下,我想配置不同得环境该这么配置,比如说我有两个测试环境,一个生成环境,我要分别打包
老师,请问如何去除全局页脚,我用视频的方法可以覆盖,但是无法去除
老师,如何去除页脚,我用视频的方式只能覆盖,无法去除,就算将很多注释掉,页脚还是存在
import ProLayout, { SettingDrawer,DefaultFooter} from '@ant-design/pro-layout';
import React, { useEffect } from 'react';
import Link from 'umi/link';
import { connect } from 'dva';
import { formatMessage } from 'umi-plugin-react/locale';
import Authorized from '@/utils/Authorized';
import RightContent from '@/components/GlobalHeader/RightContent';
import { isAntDesignPro } from '@/utils/utils';
import logo from '../assets/logo.svg';
// import {DefaultFooter} from "@ant-design/pro-layout";
/**
const menuDataRender = menuList =>
menuList.map(item => {
const localItem = { ...item, children: item.children ? menuDataRender(item.children) : [] };
return Authorized.check(item.authority, localItem, null);
});
const links = [
{
key: '',
title: '',
href: '',
blankTarget: true,
},
{
key: '',
title: '',
href: '',
blankTarget: true,
},
];
const copyright = '';
//所有 footerRender 都注释掉,页脚还是存在,找不到页脚是在哪里引入的
const footerRender = (_, defaultDom) => {
if (! isAntDesignPro()) {
// return defaultDom;
return ( <>
</>
)
}
// return (
// style={{// <>
// {defaultDom}
//
// padding: '0px 24px 24px',
// textAlign: 'center',
// }}
// >
//
// // src="https://www.netlify.com/img/global/badges/netlify-color-bg.svg"
// width="82px"
// alt="netlify logo"
// />
//
//
// </>
// );
}
const BasicLayout = props => {
const { dispatch, children, settings } = props;
/**
useEffect(() => {
if (dispatch) {
dispatch({
type: 'user/fetchCurrent',
});
dispatch({
type: 'settings/getSetting',
});
}
}, []);
/**
const handleMenuCollapse = payload => {
if (dispatch) {
dispatch({
type: 'global/changeLayoutCollapsed',
payload,
});
}
};
return (
<>
logo={logo}
onCollapse={handleMenuCollapse}
menuItemRender={(menuItemProps, defaultDom) => {
if (menuItemProps.isUrl) {
return defaultDom;
}
);
};
export default connect(({ global, settings }) => ({
collapsed: global.collapsed,
settings,
}))(BasicLayout);
这不是 v4 版本的啊,v4 改了挺多的,看完有些地方还是不会用
权限管理那个视频里有 v4 的分页
是基于 Ant design pro v4 & ant design v3
Ant design pro v4 & ant design v4 的,可以看这个 https://www.qiuzhi99.com/playlists/ant-design-pro-permisson.html ,有分页的
这个课有很多和直接 create 出来的项目不一样,咱们所有都是参考模板自动创建。注册那个部分,创建出来的部分,路由都无法访问显示 404.怎么才能和老师的代码从原生开始保持一致呢。
和视频保持相同版本
怎么才能和视频一样呢,我是用老师提供的方法 create 出来的。
这是本套视频的源码 https://github.com/hfpp2012/hello-antd-pro-v4
你好 我目前看到该网站大部分都是 react 栈视频教程, 请问作者是否会 出一些 vue 栈 flutter 、koa2 等视频 是否会更友好
嗯,会
各位,视频靠谱不?最近也在用基于 v4 这个框架做权限,不怎么会,想找个视频学习下?求分享,我 qq1733094171 谢谢大佬们
这个分享送会员如何操作?