首页 > 解决方案 > 我有 1 个对象,对象内部有 1 个数组,如何在 reactjs 中循环数组?

问题描述

我有一个对象,对象内部有一个数组,如何循环数组?

export class DetailMerchant extends Component {
  constructor(props) {
    super(props);
    this.state = {
      nav1: null,
      nav2: null,
      detailMerchant:[]
    };
  }

  UNSAFE_componentWillMount(){
    const id = this.props.match.params.id_merchant
    this.setState({
      MERCHANT_ID:id,
    })
  }

  async componentDidMount() {
    await Api.post('/merchant-detail', this.state)
    .then((response) => {
      const responseJson = response
      if (responseJson.data.STATUS_CODE === '200') {
        this.setState({
          nav1: this.slider1,
          nav2: this.slider2,
          detailMerchant:responseJson.data.DATA
        });
      }
    })
  }

  render() {

    const detailMerchant = this.state.detailMerchant
    console.log(detailMerchant)

   const imgMerchant = detailMerchant.map(data => {
   return (<img src={data.merchant_id})
   })

    return (
      <Container>
       {imgMerchant}

      </Container>
    )
  }
}

我尝试了 imgMerchant 循环,但是 TypeError: Cannot read property 'map' of undefined

我在做什么是正确的?但我试图很好,只有当 detailMerchant 包含一个在其中一个属性中具有许多属性的对象时,才会有一个数组类型 Merchant_all_img

标签: javascriptarraysreactjsobject

解决方案


Check your responsJson.data.DATA


推荐阅读