gpt4 book ai didi

reactjs - 如何使用 React Material-UI 创建 2 列表单?

转载 作者:行者123 更新时间:2023-12-04 14:32:08 27 4
gpt4 key购买 nike

我正在创建一个带有 material-ui 的 react 形式。

我希望表单是一个固定的 2 列 View ,而不是基于浏览器大小的流动,所以它总是这样的:

|First Name      |Last Name|
|Street Address |City |

而不是最终像
|First Name      |Last Name|  Street Address  |City     |

https://codesandbox.io/s/0q7kw76nyl
import React from "react";
import PropTypes from "prop-types";
import { withStyles } from "@material-ui/core/styles";
import TextField from "@material-ui/core/TextField";

const styles = theme => ({
textField: {
marginLeft: theme.spacing.unit,
marginRight: theme.spacing.unit
}
});

class TextFields extends React.Component {
state = {
firstName: "",
lastName: "",
street: "",
city: ""
};

handleChange = name => event => {
this.setState({ [name]: event.target.value });
};

render() {
const { classes } = this.props;

return (
<form className={classes.container} noValidate autoComplete="off">
<TextField
id="first-name"
label="First Name"
className={classes.textField}
value={this.state.firstName}
onChange={this.handleChange("firstName")}
margin="normal"
/>

<TextField
id="last-name"
label="Last Name"
className={classes.textField}
value={this.state.lastName}
onChange={this.handleChange("lastName")}
margin="normal"
/>

<TextField
id="address-street"
label="Street Address"
className={classes.textField}
value={this.state.street}
onChange={this.handleChange("street")}
margin="normal"
/>

<TextField
id="address-city"
label="City"
className={classes.textField}
value={this.state.city}
onChange={this.handleChange("city")}
margin="normal"
/>
</form>
);
}
}

TextFields.propTypes = {
classes: PropTypes.object.isRequired
};

export default withStyles(styles)(TextFields);

最佳答案

如上所述,放入 div 效果很好。

您还可以将它们放在网格布局中以进行额外的自定义。

网格布局有一些简洁的附加功能,例如项目的间距和对齐方式、可自定义的项目宽度,这里是 the documentation .

import Grid from '@material-ui/core/Grid'
<Grid container>
<Grid item xs={6}>
...
</Grid>
<Grid item xs={6}>
...
</Grid>
</Grid>

关于reactjs - 如何使用 React Material-UI 创建 2 列表单?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55833651/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com