一、react函数式组件下标问题
在react函数式组件中,下标参数不能直接在组件中进行修改,因为这会违背react的单向数据流原则,容易引发数据不稳定。可以考虑传入父组件中的state,通过父组件的state来控制下标的改变。
示例代码:
const [currentIndex, setCurrentIndex] = useState(0); // 父组件传入 const changeIndex = () => { setCurrentIndex(currentIndex + 1); } return ( {data[currentIndex].title} )
二、react函数式组件不能继承
与类组件不同,函数式组件是无法通过extends实现继承的。这是因为函数组件本身只是一个函数,而不是一个对象。如果需要实现复用代码,可以考虑使用高阶组件或render props等方式。
示例代码:
// 高阶组件
const withLogin = (Component) => {
const isLoggedIn = true; // 可以来自context或redux
return () => {
return isLoggedIn ? :请先登录
}
}
const Profile = () => {
return 用户信息原创文章,作者:ORXYV,如若转载,请注明出处:https://www.506064.com/n/331633.html