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

慈利县建设局网站杭州网站建设设计公司哪家好

慈利县建设局网站,杭州网站建设设计公司哪家好,湛江网站制作网站,自己建网站怎么做seo文章目录 一、什么是React.FC组件的 props 是什么意思二、封装ant design弹框组件之:ant design 修改密码弹框组件定义修改密码弹框组件使用修改密码弹框组件:[重要]关于提交时候,不同组件 表单数据共享报错:Button cannot be used as a JSX component.一、什么是React.FC …

文章目录

    • 一、什么是React.FC
      • 组件的 props 是什么意思
    • 二、封装ant design弹框组件之:ant design 修改密码弹框组件
      • 定义修改密码弹框组件
      • 使用修改密码弹框组件:
      • [重要]关于提交时候,不同组件 表单数据共享
      • 报错:'Button' cannot be used as a JSX component.

一、什么是React.FC

React提供了一个组件类型React.FunctionComponent,可简写React.FC。

  • 可以接收一个泛型p,默认是{}
  • children,返回一个React.ReactNode,这个children是任何component都拥有的
  • 静态属性defaultProps,组件的默认属性,外部可以不传这个属性。

我们使用React.FC来写 React 组件的时候,是不能用setState的,取而代之的是useState()、useEffect等 Hook API

import React from 'react';type MyComponentProps = {name: string;
};const MyComponent: React.FC<MyComponentProps> = ({ name }) => {return <div>Hello, {name}!</div>;
};

在这个示例中,MyComponent 是一个函数组件,接受一个名为 MyComponentProps 的对象作为参数,并返回一个 JSX 元素。使用 React.FC 声明 MyComponent 的类型,明确了它接受的 props 参数类型为 MyComponentProps。

使用 React.FC 可以提供更严格的类型检查,并帮助捕获潜在的错误。它还可以让代码更易读和理解,因为它清晰地定义了函数组件的输入和输出。

组件的 props 是什么意思

在 React 中,组件的 props(属性)是组件接收的参数,用于传递数据和配置信息给组件。

当我们使用组件时,可以通过在组件标签上添加属性来传递数据给组件。这些属性将作为 props 在组件内部访问和使用。

例如,函数组件 MyComponent,它接收一个名为 name 的属性:

function MyComponent(props) {return <div>Hello, {props.name}!</div>;
}

这个例子中,name 是 MyComponent 组件的一个属性,可以通过 props.name 来访问传递给组件的值。

当我们在父组件中使用 MyComponent 时,可以像这样传递 name 属性的值:

<MyComponent name="Alice" />

我们将字符串 “Alice” 作为 name 属性的值传递给 MyComponent 组件。

通过使用组件的 props,我们可以在父组件和子组件之间传递数据、配置组件的行为,并实现组件之间的交互。

二、封装ant design弹框组件之:ant design 修改密码弹框组件

定义修改密码弹框组件

添加了 ChangePasswordModalProps 类型定义,并将 visible 属性添加到组件中。同时,我们在 handleOk 函数中调用传递进来的 onOk 回调函数

ChangePasswordModal.tsx

import React, { useState } from 'react';
import { Button, Card, Modal, Input, Form, message } from 'antd';type ChangePasswordModalProps = {visible: boolean;onCancel: () => void;onOk: () => void;
};const ChangePasswordModal: React.FC<ChangePasswordModalProps> = ({ visible, onCancel, onOk }) => {const [form] = Form.useForm();return (<Modaltitle="修改密码"visible={visible}onCancel={onCancel}onOk={onOk}><Form form={form}><Form.Itemname="oldPassword"label="旧密码"rules={[{ required: true, message: '请输入旧密码' }]}><Input.Password /></Form.Item><Form.Itemname="newPassword"label="新密码"rules={[{ required: true, message: '请输入新密码' }]}><Input.Password /></Form.Item><Form.Itemname="confirmPassword"label="确认密码"rules={[{ 

文章转载自:

http://9rH8Ylrb.wgzzj.cn
http://xUwpmUb2.wgzzj.cn
http://QpeGhKRD.wgzzj.cn
http://Td5Sa2zo.wgzzj.cn
http://T0XNwkZm.wgzzj.cn
http://7hsn9jeX.wgzzj.cn
http://S9YcPK4s.wgzzj.cn
http://p4Gy6rot.wgzzj.cn
http://BgrrVHcx.wgzzj.cn
http://2UmmI3xk.wgzzj.cn
http://OdpGIPJh.wgzzj.cn
http://PWEZfboI.wgzzj.cn
http://BmczIo2m.wgzzj.cn
http://NiAZ4ibw.wgzzj.cn
http://Sg5ffmZk.wgzzj.cn
http://p9edNluc.wgzzj.cn
http://i5hL552k.wgzzj.cn
http://HeW48DBr.wgzzj.cn
http://sh2WRO6t.wgzzj.cn
http://LBewezse.wgzzj.cn
http://GQuvIIr2.wgzzj.cn
http://TJnkUfJ2.wgzzj.cn
http://4BqZhXBC.wgzzj.cn
http://y4JbZY8k.wgzzj.cn
http://etLrhl75.wgzzj.cn
http://mwm3Tqnf.wgzzj.cn
http://gKYScEIN.wgzzj.cn
http://AvI3mKux.wgzzj.cn
http://PMMG2ish.wgzzj.cn
http://waooIcaW.wgzzj.cn
http://www.dtcms.com/wzjs/649336.html

相关文章:

  • 微网站预览响应式网站的优势
  • 海事网站开发泉州制作网站开发
  • 小视频哪个网站比较好网站开发需要多少钱如何
  • 怎么做免费视频网站吗网络营销方案设计题
  • 上虞市住房和城乡建设局网站wordpress 建站 linux
  • 自助建个人网站哪个好美工设计
  • 网站建设目的影楼免费网站建设
  • 网站的差异网络规划设计师考试资料百度云
  • 丁香人才网官方网站wordpress 七牛云插件
  • 网站公司制作网站有何优势百度网盟推广价格
  • 做网站订单wordpress页面侧边栏没了
  • 网站优化找谁微信官网免费下载安装
  • 企业建网站的目的全国做网站的公司有哪些
  • 网站开发 前端 后端黄山找人做网站
  • wordpress网站标签logo设计高端网站
  • 给自己的爱人做网站做巧克力的网站
  • 直播视频网站建设免费商城系统源码
  • 进服务器编辑网站怎么做wordpress怎么去除底部
  • 同主机网站查询怎么授权小说做游戏网站
  • 陕西 工程建设 公司 网站有效的网站建设
  • 浙江省两学一做网站中国工程建设管理协会网站
  • wordpress网站模板仿站工具怎样建置换平台网站
  • 东莞连衣裙 东莞网站建设seo快速排名公司
  • 鞍山建一个网站大概要多少钱wordpress+纯静态插件
  • 网站防盗链怎么做定制模板
  • 做网站的支付诚信企业查询系统
  • 宁波机械加工网浙江建站优化品牌
  • 合肥的网站建设剂屏宜昌网站建设开发费用
  • 做国外营销型网站设计志鸿优化网下载
  • 仿快递网站源码冠县 网站建设