如何将 React 组件转换为 Next.JS?
2021-07-10
2794
我找到了这个 React 中的下拉菜单示例 ,我发现它简单而且非常好用。
import React, { Fragment } from "react";
import { Dropdown, DropdownToggle, DropdownMenu, DropdownItem } from "reactstrap";
export default class Example extends React.Component {
constructor(props) {
super(props);
this.toggle1 = this.toggle1.bind(this);
this.onMouseEnter = this.onMouseEnter.bind(this);
this.onMouseLeave = this.onMouseLeave.bind(this);
this.state = {
dropdownOpen1: false,
};
}
toggle1() {
this.setState(prevState => ({
dropdownOpen1: !prevState.dropdownOpen1
}));
}
onMouseEnter() {
this.setState({ dropdownOpen1: true });
}
onMouseLeave() {
this.setState({ dropdownOpen1: false });
}
render() {
return (
<div>
<Dropdown
className="d-inline-block"
onMouseOver={this.onMouseEnter}
onMouseLeave={this.onMouseLeave}
isOpen={this.state.dropdownOpen1}
toggle={this.toggle1}
>
<DropdownToggle caret>Dropdown1</DropdownToggle>
<DropdownMenu>
<DropdownItem header>Submenu 1</DropdownItem>
<DropdownItem>Submenu 1.1</DropdownItem>
</DropdownMenu>
</Dropdown>
</div>
);
}
}
我想在依赖项和脚本都是 React 的项目中使用它。但我不知道如何开始。有人能给我指点一下吗?只有 1 个元素,我相信我可以放弃构造函数。我看到 React 使用了一些来自
reactstrap
的 Dropdown 组件,最好的方法是将它们包含在 Next 中项目的依赖项中?
1个回答
您可以在 Next JS 中使用类组件,但大多数 Next JS 文档都使用功能组件,因此我建议您将此类组件转换为功能组件。
这里有一个快速教程 https://nimblewebdeveloper.com/blog/convert-react-class-to-function-component
您可以使用 React Hooks 重新创建逻辑。有现成的悬停钩子 https://usehooks.com/useHover/
在 NextJS 中添加依赖项与 React 类似。只需在文件顶部导入依赖项即可
fardown
2021-07-10