Let"s take a look at this for me. Why did you report it wrong?
import React, { Component, Fragment } from "react";
import {bindActionCreators} from "redux";
import {getApplyAudit} from "./actions/approve-actions";
import {connect} from "react-redux";
import {Steps} from "antd";
import moment from "moment";
const Step = Steps.Step;
class ApproveSituation extends Component {
constructor() {
super();
this.state={
status: "",
};
}
componentWillMount(record) {
const {busiType} = this.props;
let busi_type = busiType?busiType:"";
this.props.getApplyAudit(record.id,busi_type=="container"?"container":"apply");
}
componentDidMount() {
}
checkStatus = (record) => {
switch (record) {
case "1":
return "wait";
case "2":
return "process";
case "3":
return "finish";
case "4":
return "error";
default: return null;
}
}
getStatus(data){
let status = [];
if(data){
for(let i = 1;i < data.length;iPP){
if(data[i].state != 3){
status.push(i);
status.push(data[i].state);
return status;
}
}
}
}
render(){
const {auditStateList} = this.props;
console.log(auditStateList);
const state = this.getStatus(auditStateList ? auditStateList.result ? auditStateList.result : [] : []);
console.log("state:",state)
const dataSource = auditStateList ? (auditStateList.result && Array.isArray(auditStateList.result))?
auditStateList.result.map((item)=>
<Step key={item.id} value={item.state} title={item.name}
description={<div style={{ display: "flex", justifyContent: "center" }}>
{item.time ? moment(item.time).format("YYYY/MM/DD"):""}</div>}/>) :[]:[];
return (
<Steps progressDot current={state ? state[0] ? state[0] : null : null}
status={this.checkStatus(state ? state[1] ? state[1] : null : null)}>
{dataSource}
</Steps>
)
}
}
function mapStateToProps(state) {
return {
auditRuleList:state.auditStateList
}
}
function mapDispatchToProps(dispatch){
return{
getApplyAudit : bindActionCreators(getApplyAudit, dispatch),
}
}
export default connect(mapDispatchToProps,mapStateToProps)(ApproveSituation);
//action
export function getApplyAudit(id,type,state) {
const path="/auditing/getApplyAuditInfo";
return{
type:"APPLY_AUDIT_INFO",
payload: {
promise: api.get(path, {
params:{
id,
type,
state
}
})
}
}
}
//reducer
case "APPLY_AUDIT_INFO_PENDING":
return {...state,auditStateList:{loading:true}};
case "APPLY_AUDIT_INFO_SUCCESS":
return {...state,auditStateList:{result:action.payload, loading:false}};
case "APPLY_AUDIT_INFO_ERROR":
return {...state,auditStateList:{loading:false}};