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

网站怎么做才有收录常德网站设计

网站怎么做才有收录,常德网站设计,东营市做网站优化,中国空间站有几个舱段前言 小编在学react的时候,发现react在使用ant-design组件的from表单,有点惊奇,跟vue差别确实有点大。 1-React 与 Vue 表单处理对比指南 核心差异概述 特性VueReact (Ant Design Form)数据定义必须显式定义 reactive/ref通过 name 隐式定…

前言

小编在学react的时候,发现react在使用ant-design组件的from表单,有点惊奇,跟vue差别确实有点大。

1-React 与 Vue 表单处理对比指南

  1. 核心差异概述
特性VueReact (Ant Design Form)
数据定义必须显式定义 reactive/ref通过 name 隐式定义
数据管理集中式响应式对象分散式状态或表单库托管
双向绑定v-model 直接绑定受控组件或表单库自动处理
代码风格模板驱动JSX/函数式驱动

2-Vue 表单实现详解

2.1 基础表单结构

<template><form @submit.prevent="handleSubmit"><input v-model="form.username" placeholder="用户名"><input v-model="form.password" placeholder="密码"><button type="submit">提交</button></form>
</template><script setup>
import { reactive } from 'vue';// 必须显式定义数据结构
const form = reactive({username: '',password: ''
});const handleSubmit = () => {console.log(form);
};
</script>

2.2 使用 Ant Design Vue

<template><a-form :model="form" @finish="handleSubmit"><a-form-item label="用户名" name="username"><a-input v-model:value="form.username" /></a-form-item><a-form-item label="密码" name="password"><a-input-password v-model:value="form.password" /></a-form-item><a-form-item><a-button type="primary" html-type="submit">提交</a-button></a-form-item></a-form>
</template><script setup>
import { reactive } from 'vue';// 仍然需要显式定义
const form = reactive({username: '',password: ''
});
</script>

3-React 表单实现详解

3.1 原生受控组件

import { useState } from 'react';function LoginForm() {// 分散式状态管理const [username, setUsername] = useState('');const [password, setPassword] = useState('');const handleSubmit = (e) => {e.preventDefault();console.log({ username, password });};return (<form onSubmit={handleSubmit}><inputvalue={username}onChange={(e) => setUsername(e.target.value)}placeholder="用户名"/><inputtype="password"value={password}onChange={(e) => setPassword(e.target.value)}placeholder="密码"/><button type="submit">提交</button></form>);
}

3.2 使用 Ant Design Form

import { Form, Input, Button } from 'antd';function LoginForm() {const [form] = Form.useForm();// 不需要预先定义数据结构!const onFinish = (values) => {console.log(values); // 自动包含所有name字段};return (<Form form={form} onFinish={onFinish}><Form.Item name="username"><Input placeholder="用户名" /></Form.Item><Form.Item name="password"><Input.Password placeholder="密码" /></Form.Item><Form.Item><Button type="primary" htmlType="submit">提交</Button></Form.Item></Form>);
}

4-高级功能对比

4.1 表单验证
Vue 版本

<a-form-item label="邮箱" name="email":rules="[{ required: true, message: '请输入邮箱' },{ type: 'email', message: '邮箱格式不正确' }]"
><a-input v-model:value="form.email" />
</a-form-item>

React 版本

<Form.Itemname="email"rules={[{ required: true, message: '请输入邮箱' },{ type: 'email', message: '邮箱格式不正确' }]}
><Input />
</Form.Item>

4.2 动态表单字段
Vue 版本

<template v-for="(item, index) in form.items" :key="index"><a-input v-model:value="item.value" />
</template>

React 版本

{fields.map((field) => (<Form.Item name={['items', field.name]} key={field.id}><Input /></Form.Item>
))}

5-为什么 React 不需要预先定义?

  1. 设计哲学差异
    • Vue 的响应式系统需要明确知道哪些属性需要跟踪

    • React 的状态更新是显式的(通过 setState

  2. Ant Design Form 的工作原理

    Form.Item的name属性
    内部维护store
    onFinish时提取对应数据
  3. 性能考量
    • Vue 的响应式系统需要初始化所有属性

    • React 的虚拟 DOM 差异更新更灵活


6-学习建议

  1. Vue 学习者
    • 掌握 reactive/ref 的定义规范

    • 理解 v-model 的编译原理

  2. React 学习者
    • 区分受控组件和非受控组件

    • 学习主流表单库(Ant Design Form/Formik)

  3. 通用原则
    • 始终确保表单数据可追溯

    • 复杂表单建议使用专业库(VeeValidate/Formik)


附录:资源推荐
• Vue 官方表单文档

• Ant Design Vue Form

• React 受控组件文档

• Ant Design Form API


http://www.dtcms.com/wzjs/345952.html

相关文章:

  • 绍兴做网站的公司百度网盘登录入口网页版
  • 沈丘做网站去哪里中国万网域名注册服务内容
  • 京东网站建设的主旨关键信息基础设施安全保护条例
  • 男女直接做那个的视频网站武汉网络推广seo
  • 深圳网站设计公司排名中国企业网络营销现状
  • 建设工程合同网站it培训班
  • 网站logo大全如何推广自己的网站
  • 在线做文档的网站seo简单速排名软件
  • 两学一做教育网站链接推广平台
  • 所有网上购物的网站全网营销代运营
  • 便宜靠谱的建站公司广州顶正餐饮培训学校
  • 芜湖网络seo优化方案策划书
  • 网站制作套餐google推广教程
  • 成都网站建设哪里好点怎么做网站链接
  • 一台服务做两个网站吗服装品牌营销策划方案
  • 个人网站如何快速通过icp备案网站搜索排名优化怎么做
  • 新闻网站审批佛山本地网站建设
  • java 做网站广告推广计划
  • 中国最大的做网站的公司百度查看订单
  • 网站设计包括哪些步骤seo一个关键词多少钱
  • 对新网站做seo大概需要多久如何在互联网推广自己的产品
  • ps做网站首页导航栏百度收录批量查询
  • html5网站后台怎么做竞价托管推广
  • 网站开发遇到的难题网店代运营正规公司
  • 做算法题的网站联盟营销平台
  • 建设银行征信中心官方网站营销策略模板
  • 拼多多的网站建设百度在线识别图片
  • 网站建设结束的售后服务新网域名注册查询
  • 免费网站建设公司代理青岛seo博客
  • 湛江模板建站平台湖南网站seo公司