我有2页user.js
,并nonuser.js
与一个成分标题。user.js
并nonuser.js
具有相同的功能,但 UI 略有变化。现在我想整合所有这些。就像我访问页面时默认user.js
必须查看的表一样。单击nonuser.js
它应该更改为nonuser.js
表格。而且我希望两者的标题相同,当我在页面之间切换时,文本框中的内容不应更改。
我是 next.js 的新手并做出react
头文件.js
import React, { Component } from 'react';
import '../Header/header.css';
import { Menu, Input, Icon } from 'antd';
import Link from 'next/link';
class HeaderComponent extends Component {
render() {
return (
<div className="navbar">
<div className="header">
<div className="col-1">
<div className="menu">
<div>
<Link href="/User"><a>Users</a></Link>
</div>
<div>
<Link href="/nonUser"><a>Non Users</a></Link>
</div>
<Input className="text-box" placeholder="Enter name" prefix={<Icon type="search" ></Icon>}></Input>
</div>
</div>
</div>
</div>
)
}
}
export default HeaderComponent
用户.js
class User extends Component {
render() {
return (
<React.Fragment>
<div className="ant-table-row">
<div className="table-head-text">
<span className="text">Users({data.length})</span>
<Pagination defaultCurrent={1} total={100} />
</div>
<Table
rowKey={data._id}
columns={this.columns1}
rowSelection={this.rowSelection}
onExpand={this.onExpand}
dataSource={data} />
</div>
</React.Fragment>
)
}
我没有添加非用户组件,它与用户组件相同
索引.js
import Header from '../components/Header/header';
import Layout from '../components/Layout';
function App() {
return (
<Header/>
<div>
</div>
)
}
export default App;
我已经这样做了,第一次登陆时只有标题,点击标题中的用户链接,标题消失,只显示用户表。
编辑:我试过这个标题出现在两个页面中,当我在页面之间切换时,我在标题中放置了一个文本框 .textbox 值清除。
user.js 和 nonuser.js
render(){
return(
<Layout>
<div>.....</div>
</Layout>
)
}
也试过 index.js
render() {
return (
<Layout>
<div>
</div>
</Layout>
)
}
布局.js
const Layout = ({children}) => (
<div>
<Header></Header>
{children}
</div>
);