如何添加antd单选按钮以作出反应?

时间:2018-10-29 12:41:30

标签: reactjs redux radio-button antd

我正在从项目中的 antd 导入 Radio

我需要两个名为“应纳税”和“无需纳税”的单选按钮。

import {Button, Radio, Form, Icon, Input, message,Modal,createFormField,Row,Col} from "antd";

<Row gutter={24}>
    <Col span={24}>
    <FormItem>
        {getFieldDecorator('IsTaxable', {
        initialValue: "",
        rules: [{
        required: true, message: 'Please Choose your option!',
        }],
        })(
        <Radio value='true'>Taxable</Radio>


        )}

    </FormItem>

    </Col>
</Row>

如何添加第二个单选按钮,以便可以在两列(两行)中查看这些单选按钮?

2 个答案:

答案 0 :(得分:1)

您需要自定义样式radio buttons,类似于此处的垂直广播组演示-https://ant.design/components/radio/

https://codesandbox.io/s/rj2692803o

 const radioStyle = {
   display: "block",
   "margin-bottom": "5px",
   "border-radius": "3px"
 };

<Radio.Group defaultValue="taxable" buttonStyle="solid">
   <Radio.Button value="taxable" style={radioStyle}>
     Taxable
   </Radio.Button>
   <Radio.Button value="non-taxable" style={radioStyle}>
      Non-Taxable
   </Radio.Button>
</Radio.Group>

enter image description here

答案 1 :(得分:1)

您可以使用Vertical RadioGroup,也可以使用<br/>标签。

您可以在此处查看stackblitz演示示例。

具有样式的代码段

const radioStyle = {
    display: 'block',
    height: '30px',
    lineHeight: '30px',
};

<FormItem>
    {getFieldDecorator('IsTaxable', {
    initialValue: "",
    rules: [{
    required: true,
    message: 'Please Choose your option!',
    }],
    })(<RadioGroup onChange={this.onChange}>
        <Radio style={radioStyle} value={true}>Taxable</Radio>
        <Radio style={radioStyle} value={false}>Non Taxable</Radio>
    </RadioGroup>
    )}

</FormItem>

带有<br>标签的代码段

<FormItem>
    {getFieldDecorator('IsTaxable', {
    initialValue: "",
    rules: [{
    required: true,
    message: 'Please Choose your option!',
    }],
    })(<RadioGroup onChange={this.onChange}>
        <Radio value={true}>Taxable</Radio> <br />
        <Radio value={false}>Non Taxable</Radio>
    </RadioGroup>
    )}

</FormItem>