Javascript 我需要在ui网格中显示字符串数组。单列,每行一个字符串
我调用的REST API返回以下格式的数组:Javascript 我需要在ui网格中显示字符串数组。单列,每行一个字符串,javascript,arrays,angularjs,string,ng-grid,Javascript,Arrays,Angularjs,String,Ng Grid,我调用的REST API返回以下格式的数组: [“a”、“b”、“c”、“d”] 我的ui网格需要在一列中显示这些数据条目,每行一个 我有: $scope.items = []; $scope.gridOptions = { data: 'items' }; $http调用中的成功回调函数只是将$scope.items设置为response.data 对于作为JSON对象数组接收的其他方法中的数据,这很好,但在本例中,我只获取字符串,在控制台中两次出现以下错误: 错
[“a”、“b”、“c”、“d”]
我的ui网格需要在一列中显示这些数据条目,每行一个
我有:
$scope.items = [];
$scope.gridOptions = {
data: 'items'
};
$http调用中的成功回调函数只是将$scope.items
设置为response.data
对于作为JSON对象数组接收的其他方法中的数据,这很好,但在本例中,我只获取字符串,在控制台中两次出现以下错误:
错误:需要colDef.name或colDef.field属性
Wat do???我通过创建此实用程序函数使其工作:
function convertArrayOfStringsToGridFriendlyJSON(colName, arr) {
var out = [];
arr.forEach(function(entry){
var obj = {};
obj[colName] = entry;
out.push(obj);
});
return out;
};
然后使用我的列名和传入的数组将$scope.items
设置为此函数的输出。遵循此->
UI网格也可以绑定到一个一维的原语数组——在本例中使用uiGridConstants.ENTITY_绑定将使用数据数组中的整个条目作为单元格的值,而不是其中的字段。如果数据是字符串数组,或者单元格筛选器需要访问每个行对象中的多个字段,则此选项非常有用
例如:
将items数组转换为json数组。@hadiJZ您的意思是让我使用
json.parse
还是json.stringify
?您将什么作为colName传递给此函数?他从gridOptions对象中的“columnDefs”参数传递字段名
app.controller('OneDimensionCtrl', ['$scope', 'uiGridConstants', function ($scope, uiGridConstants) {
$scope.gridOptions = {
enableSorting: true,
columnDefs: [
{ name:'Name', field: uiGridConstants.ENTITY_BINDING }
],
data : [
"John Rogers",
"David Michaels",
"Andrew Johnson",
"Donald McDonald"
]
};
}]);