CNode

react如何根据登录前后渲染不同的组件

问答
RRickyDan发布于11 年前最后回复11 年前8 回复9653 浏览0 收藏

使用webpack打包后的bundle.js作为项目的入口文件,如何根据用户是否已经登录渲染不同的组件。登录状态应该是在后台判断的,react如何接收后台的信号去渲染不同的组件。

查看回复

回复 (8)

L
leapon#1·11 年前

props 传进参数

R
RickyDan#2·11 年前

不好意思?能不能说具体一些,这个props是父组件上的参数?这个参数如何感知是否已经登录了呢

O
onwo#3·11 年前
引用 i5ting@leapon 他问的可能是,登录前一对view,登陆后又一堆view,此时也应该用react的路由的

@i5ting 是的是的 用户登录信息该怎么保存呢,路由咋分登录还是未登录呢

B
bluenaux#4·11 年前

登录前后-------这是个State React根据State去渲染组件 修改State的方式: 父—>子 传props
子-->父 Props 回调 其他: 事件 可以加flux ,改善流程

  1. 组件 有个登录状态的State字段, 在ComponentDidMoount的时候监听 登录状态的事件(用来修改登录State)
  2. 登录组件 产生Action
  3. Store emit登录事件
  4. 监听的view 在事件回调里改变state

如果是根据登录状态,异步加载组件.....webpack本来就有分割chunk的能力,加载组件的方法里用AMD的require,应该很方便实现异步插入js吧


没用过react

R
RickyDan#5·11 年前

谢谢

O
onwo#6·11 年前

react 你是怎么做用户登录信息保存的呀

L
leapon#7·11 年前
引用 onworeact 你是怎么做用户登录信息保存的呀

@onwo React 是视图部分。用户登录信息是后台处理和保存的。

I
i5ting#8·11 年前
引用 leapon@onwo React 是视图部分。用户登录信息是后台处理和保存的。

@leapon 他问的可能是,登录前一对view,登陆后又一堆view,此时也应该用react的路由的

参与回复
登录后即可参与回复。登录