我试图通过 _fail 回调返回一个对象(是的,这意味着运行失败回调),但 failSeries 在控制台中返回为未定义。有任何想法吗?
var ChartModule = (function ( $, HC, HA, window, undefined) {
//Define public object
var pub = {};
//Private methods
var _getChartData = function (URL, sendData) {
var xhrObject = $.ajax({
url: URL,
type: "POST",
data: sendData,
success: function (result) { },
error: function (jqXHR, textStatus, errorThrown) {}
});
_chartDataResponse(xhrObject);
};
var _done = function (data, textStatus, jqXHR) {
var seriesObject = $.parseJSON(data);
return seriesObject;
};
var _fail = function(){
var failSeries = [];
var seriesData = {
data: [{y: 7, id: 'pointAssets', color: '#5c8fb8'}, {y:10, id: 'pointLiabilities', color: '#bb77b5'}, {y:-3, id: 'pointResult', color: '#cc5971'}],
};
failSeries.push(seriesData);
return failSeries;
};
var _chartDataResponse = function(xhrObject){
xhrObject.then(_done, _fail);
};
var _renderChart = function(renderTo, seriesObject){
console.log("Chart will be rendered to: '" + renderTo + "'");
console.log(seriesObject);
};
//Public methods
pub.getChartData = _getChartData;
pub.renderChart = _renderChart;
return pub;
})(jQuery, Highcharts, HighchartsAdapter, window, undefined);
然后,我以以下方式使用我的模块来尝试查看成功或失败回调返回的对象:
$(function(){
var x = ChartModule.getChartData("someURL", {test: "test"});
ChartModule.renderChart("breakdown-chart", x);
});