gpt4 book ai didi

javascript - 我正在将参数从一个函数传递到reactJs中的另一个函数,但结果为空

转载 作者:行者123 更新时间:2023-12-03 03:11:41 26 4
gpt4 key购买 nike

这是我的第一个具有函数 1 的文件

import React, {Component} from "react";
import axios from 'axios';
import { config } from '../../config/config.js';
class Dashboard extends Component {
constructor(props) {
super(props);
}
componentWillMount(){
var obj = {
campaign:campaignName,
campaignId:campaignId,
clientId:clientId,
clientName:clentName,
end:endDate,
start:startDate,
timeZone:new Date().getTimezoneOffset(),
ReportName:'Chargebacks',
widgetName:'Billing Cycle'
}
var resdata = ChartAPI.widgetApiCalls(config.apiUrl,obj);
console.log(resdata );
}
}

这是另一个具有功能 2 的函数

import axios from 'axios';
function charts(){
this.widgetApiCalls = function(url,parmsobj){
var byresspose=[];
axios.get(url+"/reports",{params:parmsobj})
.then(function(response){
for(var i in response.data){
byresspose.push({"label":"Billing Cycle"+" "+response.data[i].billingCycle,"value":response.data[i].total})
}
console.log(byresspose);
});
return byresspose;
};
}
charts = new charts();
module.exports = charts;

将参数从一个函数 1 传递到另一个函数 2 的正确方法是什么?

最佳答案

您需要将 charts 模块导入到仪表板组件源文件中:

import ChartsAPI from './charts.js';

然后你就可以在 componentWillMount 上调用它:

 var chartsAPI = new ChartsAPI();
chartsAPI.widgetApiCalls(config.apiUrl,obj).then(function(result) {
var resdata = result;
console.log(resdata);
});

这还需要 widgetApiCalls 返回 Promise:

this.widgetApiCalls =  function(url,parmsobj){
return axios.get(url+"/reports",{params:parmsobj})
.then(function(response){
var byresspose=[];
for(var i in response.data){
byresspose.push({"label":"Billing Cycle"+" "+response.data[i].billingCycle,"value":response.data[i].total})
}
console.log(byresspose);
return byresspose; // this will come to the Dashboard `widgetApiCalls.then`
});
};

关于javascript - 我正在将参数从一个函数传递到reactJs中的另一个函数,但结果为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46925878/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com