首页 > 其他分享 >【React工作记录五十八】函数方式渲染页面

【React工作记录五十八】函数方式渲染页面

时间:2023-05-22 10:01:30浏览次数:40  
标签:STATUS PARTNERS return funs React case exportData 五十八 页面


 

前言

我是歌谣 我有个兄弟 巅峰的时候排名c站总榜19 叫前端小歌谣 曾经我花了三年的时间创作了他 现在我要用五年的时间超越他 今天又是接近兄弟的一天人生难免坎坷 大不了从头再来 歌谣的意志是永恒的 放弃很容易 但是坚持一定很酷

导语

项目中添加按钮的两种方式

【React工作记录五十八】函数方式渲染页面_数据

【React工作记录五十八】函数方式渲染页面_模态框_02编辑

核心实现代码

第一部分

getButtonList(status, funs)

【React工作记录五十八】函数方式渲染页面_调用方法_03

调用 传入两个参数 第一个参数用鱼switch判断 第二参数继续调用方法

第二部分

const funs = {
      showModal: this.showModal,
      handleBySigning: this.handleBySigning,
      handleSpecialReleaseApply: this.handleSpecialReleaseApply,
      handleTransferApply: this.handleTransferApply,
      ownerChange: this.ownerChange,
    };

【React工作记录五十八】函数方式渲染页面_调用方法_04

第三部分

export const getButtonList = (status, funs) => {
  switch (status) {
    // case PARTNERS_DRAFT_STATUS: //草稿
    //   return [checkBtn(funs)];
    // case PARTNERS_CHECKING_STATUS: //审核中
    //   return [checkBtn(funs), bySign(funs)];
    // case PARTNERS_TOBECHECK_STATUS: //待审核
    //   return [checkBtn(funs), downContract(funs)];
    case PARTNERS_TOBESIGN_STATUS: //待签约
      return [
    
        // specialRelease(funs),
       
      ];
    // case PARTNERS_FAILED_STATUS: //审核不通过
    //   return [checkBtn(funs)];
    case PARTNERS_CNECELED_STATUS: //取消
      return [marking(funs), recoverQualification(funs), exportData(funs)];
    case PARTNERS_FREEZEING_STATUS: //冻结
      return [exportData(funs), marking(funs), unFreeze(funs), disQualification(funs)];
    case PARTNERS_SPECIALRELEASE_STATUS: //
      return [
        exportData(funs),
        marking(funs),
        freeze(funs),
        disQualification(funs),
        distributeCustomer(funs),
        // bySign(funs),
      ];
    case PARTNERS_EFFECTIVE_STATUS: //合作中
      return [
     
        // ownerChange(funs),
   
        exportData(funs),
   
        marking(funs),
 
        distributeCustomer(funs),

        freeze(funs),
    
        disQualification(funs),
 
        // qualifiedTransfer(funs),
        // exportData(funs),
      ];

    default:
      return [
        exportData(funs),
        marking(funs),
        // ownerChange(funs),
        // distributeCustomer(funs),
        // freeze(funs),
        // disQualification(funs),
      ];
    // qualifiedTransfer(funs),
    //  bySign(funs),];
  }
};

【React工作记录五十八】函数方式渲染页面_调用方法_05

第四部分

const recoverQualification = (funs) => {
  return {
    title: '恢复资格',
    buttonKey: 'H501000000013',
    onClick: () => {
      funs.showModal('recover');
    },
  };
};

【React工作记录五十八】函数方式渲染页面_数据_06

第五部分

//显示模态框
  showModal = (type) => {
    if (!this.props.agent.selectedRows.length) {
      message.info('请选择要操作的数据!');
      return;
    }
    this[`${type}Modal`].showModal();
  };

【React工作记录五十八】函数方式渲染页面_调用方法_07

第六部分

<CheckModal ////审核弹窗
          onRef={(ref) => {
            this.checkModal = ref;
          }}
          remarkList={remarkList}
          handleReset={this.handleReset}
          dispatch={dispatch}
          id={activeParenter.id}
          code={activeParenter.code}
        />

【React工作记录五十八】函数方式渲染页面_模态框_08

总结

通过不同type显示不同弹框的开启 nice


标签:STATUS,PARTNERS,return,funs,React,case,exportData,五十八,页面
From: https://blog.51cto.com/u_14476028/6321039

相关文章

  • 【React工作记录五十九】根据key值过滤形成新得数组
     目录前言导语 核心实现代码运行结果前言我是歌谣我有个兄弟巅峰的时候排名c站总榜19叫前端小歌谣曾经我花了三年的时间创作了他现在我要用五年的时间超越他今天又是接近兄弟的一天人生难免坎坷大不了从头再来歌谣的意志是永恒的放弃很容易但是坚持一定很酷导语根据key......
  • react-create-app 创建的项目添加保存自动格式化
    前言首先,react-create-app创建的项目是自带安装eslint的,所以我们要安装prettier及相关插件参考=>https://juejin.cn/post/6844903901544742925安装的包这些都是开发时依赖,注意安装位置eslint-config-react-app打开modules文件,可以看到是已经预安装的,无需重复......
  • React 入门实例教程
    现在最热门的前端框架,毫无疑问是 React 。上周,基于React的 ReactNative 发布,结果一天之内,就获得了5000颗星,受瞩目程度可见一斑。React起源于Facebook的内部项目,因为该公司对市场上所有 JavaScriptMVC框架,都不满意,就决定自己写一套,用来架设 Instagram 的网站。做出......
  • [React] useEffect
    purefunction:单纯返回jsx元素的组件在使用react函数组件时,理论上函数组件只会进行不改变内部状态值的计算,以及返回html代码。一个pure函数就是如此,例如一个函数组件接受一个id作为传入属性,注意这里传入的id并没有发生变化,我们只是简单进行了输出和数学计算://thisisapurefu......
  • 苹果爸爸发飙,封杀 React Native?
    今天早上一上班,就收到了苹果发来的一封警告邮件,一看内容,就知道这是个大事啊,还赶紧发了个微博,然后,今天一整天,iOS界都被这个消息炸裂了!这封警告邮件大概意思就是说,苹果将不再允许使用动态下发代码的机制,如果App内部使用了动态下发代码的框架,将有被拒的风险。所谓的动态下发代码,就......
  • React闭包陷阱
    React闭包陷阱ReactHooks是React16.8引入的一个新特性,其出现让React的函数组件也能够拥有状态和生命周期方法,其优势在于可以让我们在不编写类组件的情况下,更细粒度地复用状态逻辑和副作用代码,但是同时也带来了额外的心智负担,闭包陷阱就是其中之一。闭包从React闭包陷阱的名字......
  • react面试题汇总1
    请介绍一下React的生命周期函数及其调用顺序。答:React的生命周期函数分为三个阶段:挂载、更新和卸载。以下是各个生命周期函数的名称及调用顺序:挂载阶段constructor():组件构造函数,在最开始时调用。staticgetDerivedStateFromProps():从props中派生出state,返回新的state值,会在render......
  • React 源码调试 (react版本17.0.2)
    环境准备//create-react-a匹配版本$create-react-app-V5.0.1//node版本$node-Vv16.16.0  1、第一步通过create-react-app快速创建环境,然后运行yarneject释放webpack配置  npxcreate-react-appreact-debugyarneject 2、第二步降级reac......
  • 实现 React 简易版 createElement 和 render 方法
    前言在React中,我们都知道可以写jsx代码会被编译成真正的DOM插入到要显示的页面上。这具体是怎么实现的,今天我们就自己动手做一下。实现createElement方法这个方法平时开发我们并不会用到,因为它是经babel编译后的代码,我们新建一个React项目,index.js最简单的代码结构如......
  • 微信小程序-页面生命周期
    官方文档:https://developers.weixin.qq.com/miniprogram/dev/framework/app-service/page-life-cycle.html......