javascript - react两个类似组件问题

 mobiledu2502870957 发布于 2022-11-08 13:06

如上两图,第一张是添加,第二个是添加后查看,两个表单一样,但第二个可以修改,提交的ajax地址不一样,并且初始化状态也不一样,其余两个组件可以说是一样的,怎么不写两个组件,有公用的方法吗?

4 个回答
  • prop 设计一下,例如这样

    • type,enum('create','update')

    • data,type === 'create' 时,传个 null,当 type === 'update' 传表单初始数据。

    • onOk,根据 type 判断一下请求哪个接口,发起请求即可。

    2022-11-12 01:58 回答
  • ajax地址不一样,可以通过调用父组件方法解决。
    A组件: this.props.postData();
    B组件: this.props.postData();

    初始化状态不一样可以通过传入不同的props解决
    比如

    2022-11-12 01:58 回答
  • 不一样的东西都当做 prop 由父组件传进去

    2022-11-12 01:58 回答
  • 粗略一想,如果用redux的话,先弹出add的diag,收集用户输入,点提交发POST请求,如果API成功,当前的redux中的store中的这个state就变成了add成功的那条记录,diag不用消失,print一个消息说提交成功 。store中有个动词比如perform action之类的动词变成'update' ,这时候再提交给到API 封装中的function,会根据这个action分支到 put/patch api

    2022-11-12 01:58 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有