0

API呼び出しにfluxとaxiosで反応を使用しています。ネストされたAPI呼び出しを実装しました。APIからデータを正しく取得しており、コンソールに正しく表示されますが、ネストされたAPI呼び出しデータがコンポーネントにレンダリングされないという問題があります。私のコード

loadCategoryProducts(action) {

    axios.post(API, {
         "query": 'query {ProductListQuery(category :"'+action.params.category+'", subcategory :"'+action.params.subcategory+'"){productinfo{partterminologyid,aliasname,partterminologyname,usedescription,categoryname,subcategoryname}worldpacinfo{worldpaccategoryid,basevehicleidnumber,parttypeidnumber,branddescription,detaileddescription,Note,popularity,price,productimageurl,productpartnumber,productthumburl,ThumbURL,available,Part}}}',
    }).then(resp => {
        if(resp.data.data){
            var productsArr = resp.data.data['ProductListQuery'];
            var count = productsArr.length;
            productsArr.map(function(value, index) {
                if(value.worldpacinfo.basevehicleidnumber!='undefined') {
                    axios.post(API, {
                        "query": 'query {PriceQuery(basevehicleidnumber :"'+value.worldpacinfo.basevehicleidnumber+'",parttypeidnumber:"'+value.worldpacinfo.parttypeidnumber+'",productpartnumber:"'+value.worldpacinfo.productpartnumber+'"){corefee,retailprice}}',
                    }).then(resp1 => {
                        value.worldpacinfo['retailprice']=resp1.data.data.PriceQuery.retailprice;
                        value.worldpacinfo['corefee']=resp1.data.data.PriceQuery.corefee;
                    }).catch((err) => {
                        console.log(err);
                    });
                }
            })
        }
        //console.log(productsArr);
        this.product = productsArr;
        this.emit("change");
    }).catch((err) => {
            console.log(err);
    });
}

componentWillMount のストアでこのメソッドを呼び出しました

4

0 に答える 0