当前位置: 首页 > news >正文

深圳人才网招聘官方网产品seo标题是什么

深圳人才网招聘官方网,产品seo标题是什么,线上会议软件有哪些,thinkphp做网站快吗一、概述 Antd是一个非常强大的UI组件库,里面的Form表单组件也基本能满足我们大多数场景。但是也有需要自定义表单的场景。 Vue2里我们使用v-model,结合子组件的model属性,来实现自定义组件的双向绑定。 Vue3里我们使用v-model,…

一、概述

Antd是一个非常强大的UI组件库,里面的Form表单组件也基本能满足我们大多数场景。但是也有需要自定义表单的场景。

  • Vue2里我们使用v-model,结合子组件的model属性,来实现自定义组件的双向绑定。

  • Vue3里我们使用v-model,结合子组件的update:modelValue来实现同样功能。

  • 到了React+Antd中,我们采用引用父组件默认传入onChange事件,子组件调用来实现。

二、开发实现

1、代码

父组件代码:

import { Button, Space, Form, Input, Radio, Switch } from "antd";
import MyBtns from "./components/myBtns";
import { useState, useEffect } from "react";function Index() {const [form] = Form.useForm();const [formData, setFormData] = useState<Object>({});const layout = {name: "myFrom",autoComplete: "off",labelCol: {span: 3,},wrapperCol: {span: 21,}};const initData = {title: "IT飞牛的自定义表单",item1: "选项-2",};const onFinish = async (values: Object) => {//提交数据//...}const onReset = () => {form.resetFields();};useEffect(() => {setFormData(initData);}, [])return <div>{JSON.stringify(formData)}<FormonFinish={onFinish}onValuesChange={(changedValues, allValues) => { setFormData(allValues) }}form={form}labelAlign="right"initialValues={initData}style={{"marginTop": "50px"}}{...layout}><Form.Item name="title" label="标题"><Input /></Form.Item><Form.Item name="item1" label="自定义项"><MyBtns /></Form.Item><Form.Item wrapperCol={{ offset: 3, span: 21 }}><Space size="middle"><Button htmlType="button" onClick={onReset}>取消</Button><Button type="primary" htmlType="submit">提交</Button></Space></Form.Item></Form></div >
}export default Index;

子组件(myBtns.tsx)代码:

import { Button, Space } from "antd";const myBtns = (props: any) => {const { value, onChange } = props //value 是form表单中"name"对应的字段值const onSelected = (val: string) => {onChange(val)}const getTypeClass = (val: string) => {return value == val ? "default" : "dashed";}return <Space><Button type={getTypeClass("选项1")} onClick={() => onSelected("选项1")}>选项1</Button><Button type={getTypeClass("选项2")} onClick={() => onSelected("选项2")}>选项2</Button><Button type={getTypeClass("选项3")} onClick={() => onSelected("选项3")}>选项3</Button></Space>
}export default myBtns;

2、最终效果

请添加图片描述

可以看到,表单中有两个选项,第一个是Input组件,第二个是自定义组件MyBtns,已经实现数据的事实更新。

3、原理

Form.Item 在渲染时会注入 valueonChange 事件给子元素。

  • value:form.item对应的name属性的值,可用作默认值以及返显
  • onChange:用于监听value元素值的变化,并将其传给form.item使其可以通过相关api获得其值

注意:当你的字段组件被包裹时属性将无法传递。所以以下代码是不会生效的:

<Form.Item name="input"><div><h3>I am a wrapped Input</h3><Input /></div>
</Form.Item>
http://www.tj-hxxt.cn/news/124214.html

相关文章:

  • 关键词排名是什么意思站长工具seo综合查询工具
  • 建站最便宜的平台品牌推广工作内容
  • 17网站一起做网地推app推广赚佣金
  • mui做wap网站上海百度推广官网
  • 网站建设 企业观点网站怎样才能在百度被搜索到
  • 枣庄学习建设网站培训seo sem关键词优化
  • 青岛网站建设迅优重庆做网络优化公司电话
  • 做高仿网站5月疫情最新消息
  • 微小旅行社能否做网站宁波网站建设推广平台
  • 网站建设 图片上传东莞整站优化推广公司找火速
  • 已经有了网站源代码怎样搭建seo站长工具下载
  • 香港网站空间价格刷网站软件
  • 有什么做心理咨询的好网站seo推广论坛
  • 网站优化我自己可以做吗百度收录什么意思
  • 没有网站如何做天天联盟佛山做网站的公司哪家好
  • 做网站需要审批不惠州网站推广排名
  • 肥市城乡建设委员会网站厦门人才网唯一官网招聘
  • 中企动力邮箱官方网站google优化排名
  • 那些开店的网站是自己做的吗我为什么不建议年轻人做销售
  • 无锡网站公司电话如何做关键词优化
  • 合肥建站公司排名前十名优秀网站网页设计图片
  • 捕鱼游戏网站建设步骤大数据营销成功案例
  • 义乌门户网站建设11月将现新冠感染高峰
  • 18.ppt网站是谁做的上海优化公司选哪个
  • 官方网站新闻推送如何做滚动图片百度软件下载安装
  • 仿win8 网站网站页面禁止访问
  • dj网站建设佛山百度关键词排名
  • 深圳市宝安区人民法院官网网站优化内容
  • 东易日盛装饰公司简介seo关键词排名优化怎样收费
  • wordpress3.9.1中文北京朝阳区优化