Reactjs 哪个是最好的“用户教育者”->;还原函数声明

Reactjs 哪个是最好的“用户教育者”->;还原函数声明,reactjs,optimization,coding-style,react-hooks,Reactjs,Optimization,Coding Style,React Hooks,从这个角度来看,有一个初步的方法可以做到这一点。但和许多其他方法一样,这很少是有效的方法 因此,我想知道声明reducer函数的最佳/高效/更干净的方法是什么,因为它是: 假设import-React,{useReducer,useCallback}来自“React” 1.外部功能(文档样式) const reducer=(状态,动作)=>state 常量mycop=()=>{ const[state,dispatch]=useReducer(reducer,{}) } 2. 使用回调声明 c

从这个角度来看,有一个初步的方法可以做到这一点。但和许多其他方法一样,这很少是有效的方法

因此,我想知道声明
reducer
函数的最佳/高效/更干净的方法是什么,因为它是:

假设
import-React,{useReducer,useCallback}来自“React”

1.外部功能(文档样式)
const reducer=(状态,动作)=>state
常量mycop=()=>{
const[state,dispatch]=useReducer(reducer,{})
}
2. <代码>使用回调声明
constmycop=()=>{
const reducer=useCallback((状态,动作)=>state,[])
const[state,dispatch]=useReducer(reducer,{})
}
3. <代码>使用回调内联声明替代方案
constmycop=()=>{
const[state,dispatch]=useReducer(useCallback((state,action)=>state,[]),{})
}
4.内联函数声明
constmycop=()=>{
const[state,dispatch]=useReducer((state,action)=>state,{})
}
注意:可读性当然是一个问题,但我不需要在这里使用这个参数:)


所有这些方法都是“有效的”,我看不到有太多的函数重新声明。但是我想知道为什么react文档没有描述
2。使用回调
方法,如果发现它更干净。

我更喜欢第一种方法

这是最简单的,而且您不太可能遇到任何性能问题

React核心团队自己警告不要过早优化。在不需要的地方使用
useCallback
是过早的优化,会增加不必要的复杂性


关于内联函数:我(和我认识的许多开发人员)不赞成像(方法3或4)这样的内联函数。这没什么大不了的,但也不干净。我更喜欢第一种方法

这是最简单的,而且您不太可能遇到任何性能问题

React核心团队自己警告不要过早优化。在不需要的地方使用
useCallback
是过早的优化,会增加不必要的复杂性


关于内联函数:我(和我认识的许多开发人员)不赞成像(方法3或4)这样的内联函数。这没什么大不了的,但也不是“干净的”

在你过早的优化论证之后,我在这篇文章的讲座中摔倒了,听起来很有趣:@HollyPony是的。对内联函数等性能细节吹毛求疵也是过早优化的一个例子。我上面所说的内联函数是代码风格方面的。希望我已经回答了你的问题!在你过早的优化论证之后,我在这篇文章的讲座中摔倒了,听起来很有趣:@HollyPony Yes。对内联函数等性能细节吹毛求疵也是过早优化的一个例子。我上面所说的内联函数是代码风格方面的。希望我已经回答了你的问题!