
介绍
在某些情况下,我们假设您必须在基于 react 类的组件中使用 react hook 概念。
但是正如你所知,如果你想在基于类的组件中直接使用它们,反应钩子只能在功能组件中工作。
它将出现错误。
那么如何做呢,有一个解决方案。
有3步解决方案
mallcloud商城基于SpringBoot2.x、SpringCloud和SpringCloudAlibaba并采用前后端分离vue的企业级微服务敏捷开发系统架构。并引入组件化的思想实现高内聚低耦合,项目代码简洁注释丰富上手容易,适合学习和企业中使用。真正实现了基于RBAC、jwt和oauth2的无状态统一权限认证的解决方案,面向互联网设计同时适合B端和C端用户,支持CI/CD多环境部署,并提
- 创建自定义hook,(你可以直接使用hook,但不会获得更多好处)
- 在高阶组件中使用钩子
- 我们需要将高阶组件包装在基于类的组件中。
创建自定义 hook
import {usestate} from 'react';
const usegreet = () => {
const [text, settext] = usestate('');
//... do any additional operation / hooks you want to add
return text;
}
创建高阶组件
// import usegreet
export const myhigherordercomponentdemo = (component) => {
return (props) => {
const text = usegreet();
return ;
}
}
将高阶组件包装在基于类的组件中
// import useGreet
class MyClass extends React.component {
render() {
return (
{this.props.text}
)
}
}
export default MyHigherOrderComponentDemo(MyClass);









