React - 模板和事件
通常在 JSX-模板中定义事件处理程序并不是一个好的实践。
React - useState
const {useState} = require('react')
const [state, setState] = useState(initialValue)
React - 不要在组件中定义组件
RT
React - Hook 定义位置
状态 Hook 定义在组件的上下文中,不要定义在条件语句、循环或者其他函数内。
不明白为什么。
React - JSX 内嵌数组
数组或者迭代器中的每个组件都需要有个 key 属性,它是用来标识 DOM 元素区别的。React 会根据 key 不同更新数据。
https://medium.com/@robinpokorny/index-as-a-key-is-an-anti-pattern-e0349aece318
React 维护一个虚拟的 DOM 树,与当前渲染结果进行比较。这里只考虑它们是数组的情况,如果对应元素的 key 不一致,则此子树会被直接替换,否则会递归的比较子树不同的位置进行替换。所以,当不同的对象数据,在两次渲染之间,使用了同样的 key,那多半会出现更新错误。而使用数组下标做 key 是产生这种问题的最可能的原因之一。
Ph'nglui mglw'nafh Cthulhu R'lyeh wgah'nagl fhtagn