javascript - 当窗口大小缩放到更低或更高时如何删除属性
问题描述
我这里有一个来自 antd 的表格组件
<Table columns={columns} dataSource={data} scroll={{ x:1000 }} pagination={{pageSize: 4}} />
scroll={{ x:1000 }}
基本上,当我使浏览器窗口变大时,我想删除比1200px
. 我如何在 React 中实现这一点?
预订功能()
function booking() {
return (
<div className="booking">
<Navbar bg="" variant="dark" id="mainHeader">
<Nav className="mr-auto">
<img
src={logo}
width="110"
height="50"
className="d-inline-block align-top ml-4 mt-3 mb-2"
alt="logo"
/>
</Nav>
<Nav.Link a href="/" className="ml-sm-4 text-dark">Home</Nav.Link>
<Nav.Link a href="/bookings" className=" text-dark">Bookings</Nav.Link>
<Nav.Link a href="/signout" className="mr-sm-4 text-dark">Sign Out</Nav.Link>
</Navbar>
{/* My Booking Table */}
<header className="App-header text-dark">
<Card border="light" className="bookingCard" id="bookingCard" >
<h1 className="mt-4 ml-4" id="cardTitle">Upcoming Bookings</h1>
<Card.Body>
<Table columns={columns} dataSource={data} {...!!this.state.scroll && { scroll: { x: 1000 }}} pagination={{ pageSize: 4 }} />
</Card.Body>
</Card>
</header>
</div>
);
}
我想改变那里的桌子。
解决方案
您可以添加一个在调整窗口大小时触发的事件。小示例代码:
import React from "react";
import "./styles.css";
export default class App extends React.Component {
constructor(props) {
super(props);
this.state = {
resized: window.innerWidth < 1200
};
this.onResize = this.onResize.bind(this);
}
onResize() {
if (window.innerWidth < 1200) {
this.setState({ resized: true });
} else {
this.setState({ resized: false });
}
}
componentDidMount() {
window.addEventListener("resize", this.onResize);
}
}
在回报声明中:
<Table columns={columns} dataSource={data} scroll={{x: this.state.resized ? 1000 : 0}} pagination={{ pageSize: 4 }} />
推荐阅读
- java - Xades 签名创建和验证端到端工作示例?
- excel - VBA 登录 zerodha 帐户,然后下载并再次上传实时数据以获取买卖信号
- python - NameError:在条目中的文件路径打印期间未定义名称“entry1”
- snowflake-cloud-data-platform - 如何在不使用雪花的情况下获得 CONNECT_BY_ISCYCLE 和 CONNECT_BY_ISLEAF 的结果?
- python - 如何在函数或 for 循环中将字符串作为变量执行?
- visual-studio-code - 如何在 VS Code 的活动栏中设置活动元素的样式?
- javascript - 如何通过正则表达式验证名字?
- git - 没有什么可以比较的。master 和 new_remote_branch_name 是完全不同的提交历史
- mysql - 在运行 powershell 脚本以更新 AWS lambda 中的 mysql 表时面临问题
- wordpress - 当我使用 mysite/wp-admin 登录而不是进入 wordpress 管理页面时,我被重定向到我的站点主页