一个简单又好入门的 react 后台管理系统(3)

006i7geoly1fb552x9lwoj30k00k0taf0.jpg

12.27 完善登录页与创建仓库

一、登录前端页面的完善

1. 其实和上次的注册功能干的事几乎一毛一样,首先现在 UserApi.js 文件下在创建一个登录接口,然后再登录页对这个接口进行引入,之后就是拿到 UserApi.js 给它传的一个 Promise 对象,然后 .then 对数据进行处理
image.png

image.png

image.png
2. 完善基本功能后,在优化页面的一些特效,增加用户的体验感,比如注册功能页面引用的,loading 和延时,都可以多试试
image.png

image.png

image.png

二、创建 store 仓库

1. 下载 redux
npm install --save redux
2. 在scr 文件夹下创建一个 store 文件夹,里面创建两个文件,一个是 index.js 文件,另一个是 reducer.js 文件夹
index.js 的内容如下
image.png
reducer.js 的内容如下
image.png
3. 为了组件间更好的使用 store ,我们可以下载 react-redux
npm install --save react-redux
4. 在最外层引入 react-redux 的 Provider 方法,这里可以在 App.js 或者最外层的 index.js 文件下引入,这里我选择在 App.js 下面引入
image.png
5. 由于我们可能在 store 的 index.js 文件下使用 redux 的中间件,所以,再安装一个 redux-thunk
npm install --save redux-thunk
6. 为了方便我们查看仓库的数据,可以去下载一个名为 Redux DevTools 的 redux 的插件,下载完后,我们在 store 文件夹下的 index.js 里引入一下( 这里是同时将 redux-thunk 与插件一起引入使用了 )
点击这里进入 redux 插件文档
image.png
找到 1.2 部分,照做即可
image.png
完成后结果如下图
image.png

三、 登录状态

1. 在 Login 的 index.js 中引入 react-redux 插件的 connect 方法,并使用此方法,代码如下(函数嵌套函数,算是一个闭包)
image.png
image.png
2. 在后台假数据接口,穿一个 data 值给前端
image.png
3. 将后台传过来的数据存到我们的 store 仓库里面,并且做一些本地存储,这样刷新页面不会重置
image.png

四、登录拦截(除了登录、注册页,其他页面都要做登录拦截)

1.首先在 src 文件夹下新建一个 utils 文件夹,这个文件夹用于存放一些公用的组件,在这个文件夹下创建一个 PrivateRouter.js 文件,用于做一个登录拦截的组件,这个文件的代码如下
image.png
2. 在 Login 文件夹下的 index.js 文件里新增一些代码,这段代码用于获取上面 PrivateRouter 组件存进 state 里面的一个重定向的地址,然后进行一个判断,因为,如果这个 state 不存在的话,默认的值就是 undefined,这样页面就会报错,所以要先判断,再跳转
image.png
3. 在 App.js 文件下引入并使用即可
image.png
4. 以上,我们已经将登陆注册的功能基本做完,现在,做一个简单的远程代码提交
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,277评论 6 503
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,689评论 3 393
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 163,624评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,356评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,402评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,292评论 1 301
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,135评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,992评论 0 275
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,429评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,636评论 3 334
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,785评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,492评论 5 345
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,092评论 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,723评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,858评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,891评论 2 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,713评论 2 354

推荐阅读更多精彩内容

  • 开一家服装店的目的都是为了赚取财富,相信这是每一个店主的心声。那么,服装店店主在经营的时候如何做才才能给店铺带来好...
    IM派大星阅读 245评论 0 0
  • 自勉 星星点缀着月亮是因为它只有微弱的光芒雄鹰翱翔在天际是因为它有一双强健的翅膀 我宁愿是荒野迷途中抛尸的苍狼也毋...
    逸川阅读 272评论 0 7
  • 2019.8.6 星期二 中雨 儿子的坚持 今天儿子陪我和老公做了件特别有意义的事情。 ...
    e8fc8b84a5c1阅读 120评论 0 0
  • 勿忘初心 ...
    忘忧荷蕊阅读 125评论 0 0