react基础表单数据回显

文章讲述了如何在React应用中,通过路由参数获取文章ID,然后利用Form组件和axios发起请求填充表单数据,以及如何集成Upload组件实现图片的上传功能。
摘要由CSDN通过智能技术生成

在这里插入图片描述
1.通过路由跳转拿到当前项的id
2. 调用Form组件实例方法setFieldsValue
代码如下:

//   回填数据
  const [searchParams] = useSearchParams();
  const articleId = searchParams.get("id");
  const [form] = Form.useForm();
 useEffect(() => {
    // 发送请求
    async function getArrticle() {
      const res = await request.get(`/mp/articles/${articleId}`);
      const { cover, ...formValue } = res.data;
      //   设置表单数据
      form.setFieldsValue({ ...formValue, type: cover.type });
      setImageType(cover.type);
      setImageList(cover.images.map((url) => ({ url }))); //封面list
    }
    if (articleId) getArrticle();
  }, [articleId, form]);

return (
//这里不要忘记绑在form组件上
     <Form form={form}>
      {/* 
            listType:决定选择文件的外观样式
            showUploadList:控制显示上传列表
            action:接口地址
            name:按照接口文档放上传字段的
            imageType > 0 当imageType>0时才显示,否则不显示
            maxCount:通过 maxCount 属性限制图片的上传图片数量
            fileList:当前显示列表
            */}
            {imageType > 0 && (
              <Upload
                name="image"
                listType="picture-card"
                showUploadList
                action={"http://geek.itheima.net/v1_0/upload"}
                onChange={onUploadChange}
                maxCount={imageType}
                multiple={imageType > 1}
                fileList={imageList}
              >
  )
  </Form>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值