Visual Studio Code
+ Volar 扩展(Vue Volar extension Pack)
可以创建一个 vue 项目工作区,并把该拓展添加至工作区建议中
https://zh-hans.reactjs.org/docs/hooks-reference.html
本文不涉及 library hooks
基础 Hook
额外的 Hook
在 JavaScript 中,数组只是另一种对象。与 objects 一样,您应该将处于 React 状态的数组视为 read-only。
这意味着您不应该重新分配数组中的项目,例如arr[0] = 'bird'
,也不应该使用改变数组的方法,例如push()
和pop()
。
相反,每次您想更新一个数组时,您都需要将一个新数组传递给您的状态设置函数。为此,您可以通过调用其非变异方法(如filter()
和map()
)从您所在 state 的原始数组创建一个新数组。然后您可以将您的状态设置为生成的新数组。
这里有一个常见数组操作的参考表。在处理 React 状态中的数组时,您需要避免使用左栏中的方法,而更喜欢右栏中的方法:
标题 | ||
---|---|---|
避免(改变数组) | 更喜欢(返回一个新数组) | |
添加 | push, unshift | concat,[...arr]传播语法 |
删除 | pop, shift, splice | filter, slice |
更换 | splice,arr[i] = ...赋值 | map |
排序 | reverse, sort | 首先复制数组 |
或者,您可以使用 Immer
,它允许您使用来自两列的方法。