antd v3.x版本-提交表單時阻止刷新頁面

低版本的antd提交表單時,會刷新頁面

antd 版本3.15.1在提交表單時,會刷新頁面(看代碼如下),怎麼處理

class myComp extends Component{
	handleSubmit = (e) => {
		console.log(e)
	}
	render () {
		return (<Form  onSubmit={handleSubmit}>
			<Form.item name="abc">
				<Input />
			</Form.item>
			<Button htmlType="submit">提交</Button>
		</Form>)
	}
}
const WrappedMyComp = Form.create({ name: 'my-form' })(myComp);
export default WrappedMyComp 

解決辦法

handleSubmit = (e) => {
    e.preventDefault();  // 阻止默認事件
    this.props.form.validateFields((err, values) => {
      if (!err) {
        console.log('Received values of form: ', values);
      }
    })

注意,上用到的 this.props.form需要使用Form.create把該組件包裹一層,方可獲取該form對象,

高版本的antd 4.x,默認就是阻止提交表單的,且綁定很方便,直接在<Form.Item>中,指定name屬性即可

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章