通过state状态作为条件,来判断显示哪个组件。
简介
- 在React中,你可以创建不同的组件来封装各种你需要的行为。然后,依据应用的不同状态,你可以只渲染对应状态下的部分内容。
- React中的条件渲染和JS中的儿一样,使用JS运算符if或者条件元素安抚去创建元素来表现当前的状态,然后让React根据它们来更新UI.
- 例如:登陆组件,登陆前和登陆后渲染不同的组件。
两个组件之间进行切换方法
方法一:逻辑语句(注意要写在render里,把return写在逻辑语句里) 方法二:直接用三目运算符进行切换 方法三:使用逻辑与或逻辑非运算符
key值
keys在DOM中的某些元素被增加或删除的时候帮助React示别哪些元素发生了变化。因此你应当给数组中的每一个元素赋予一个确定的标识。
为什么数组index作为key值不安全?
用index作为key值,会有bug,如果实在没有id,就用index。主要是因为如果渲染出来之后,这个元素没有重新排列的话是没有关系的,下次渲染顺序被打乱的话会出现问题。
用什么作为key值?
大多数都用服务器请求回来的数据里面id值作为key值。
key值的作用?
key值在兄弟之间是唯一的就可以了,因为它的作用域就渲染在了当前作用域
深度解析key的必要性(面试题)
也是key的作用
Keys是React用于追踪哪些列表中元素被修改、被添加或者被移除的辅助标识。 在开发过程中,我们需要保证某个元素的key的其同级元素具有唯一性。在Recat Diff算法中,React会借助元素的key值来判断该元素是新创建的还是被移动而来的元素,从而减少不必要的元素重新渲染。此外,React还需要借助Key值来判断元素与本地状态的关联关系,因此我们决不可忽视转换函数中key的重要性。