我有一个表格,我在其中显示来自两个不同API的数据: -
<label>USER CODE:</label>
<input type="text" ng-model="a.code"/>
<button type="button" ng-click="getData(a.code)">Show</button>
<table>
<thead>
<tr>
<th>Staff/Customer Code</th>
</tr>
</thead>
<tbody>
<tr ng-repeat="row in allUsers track by $index" >
<td>{{row}}</td>
</tr>
</tbody>
</table>
scope.getData = function (code) {
ApiServices.getStaff(code).then(function (response) {
scope.assignedStaff = response.data;
scope.allUsers = scope.assignedStaff;
});
ApiServices.getCustomers(code).then(function (response) {
scope.assignedCustomers = response.data;
scope.allUsers = scope.assignedCustomers;
});
};
我正在做的是当我输入任何员工代码并按下显示按钮getStaff
api被调用时,当我输入客户代码并按下显示按钮getCustomers
时,会调用api。因为,响应是一个数组,我在表格中用ng-repeat显示它。对于getStaff
我得到null数组作为其后的调用getCustomers
将返回null。但它适用于getCustomers
。我该怎么办才能getCustomers
在getStaff
之后不会打电话,因此无法显示空数组。
答案 0 :(得分:1)
为什么不使用var table = groupByData.ToDataTable(); // using your extension method
// snippet for creating schema from table
using (var fs = new StreamWriter(xmlFile)) // XML File Path
{
table.WriteXml(fs, XmlWriteMode.WriteSchema);
}
var table = groupByData.ToDataTable(); // using your extension method
report.SetDataSource(table);
viewer.ReportSource = report;
中合并数组?
ng-repeat
答案 1 :(得分:0)
根据我的理解,您有一些分类来确定哪个是func()
,哪个是Staff code
,如:
Customer code
因此,在Staff Code : STAFXXXXXX
Customer Code : CUSTXXXXXX
函数内部,您可以检查在点击getData
时传递的代码的索引,并根据您可以调用特定API的分类字符(show
)。 / p>
<强>样本强>
Like : STAF & CUST
var myApp = angular.module('myApp',[]);
myApp.controller('MyCtrl', function($scope) {
$scope.getData = function(code) {
if (code.indexOf('STAF') != '-1') {
console.log("Staff API call");
} else if (code.indexOf('CUST') != '-1') {
console.log("Customer API call");
} else {
console.log("No API call");
}
};
});