Javascript Ng repeat未显示json数据
感谢您的支持。所以我有一个工厂,它使用post从C方法中获取一些数据。这一切似乎都在运行,因为我可以在控制台日志中看到返回的数据。然而,当我获取数据时,我似乎无法使用ng repeat使其正确显示 我尝试了几种不同的嵌套ng重复的方法,但仍然没有成功。所以现在我想我可能没有正确地传递调用中的数据,或者我的作用域已关闭。我也尝试过将数据.d传递到hangar.ships,而不仅仅是数据。对angular来说还是很新的,所以如果有人能帮我指出正确的方向,我将不胜感激 应用程序代码:Javascript Ng repeat未显示json数据,javascript,json,angularjs,Javascript,Json,Angularjs,感谢您的支持。所以我有一个工厂,它使用post从C方法中获取一些数据。这一切似乎都在运行,因为我可以在控制台日志中看到返回的数据。然而,当我获取数据时,我似乎无法使用ng repeat使其正确显示 我尝试了几种不同的嵌套ng重复的方法,但仍然没有成功。所以现在我想我可能没有正确地传递调用中的数据,或者我的作用域已关闭。我也尝试过将数据.d传递到hangar.ships,而不仅仅是数据。对angular来说还是很新的,所以如果有人能帮我指出正确的方向,我将不胜感激 应用程序代码: var app
var app = angular.module('shipSelection', ['ngRoute', 'ngResource']);
app.controller('ShipController', function ($scope, ShipService) {
var hangar = this;
hangar.ships = [];
var handleSuccess = function (data, status) {
hangar.ships = data;
console.log(hangar.ships);
};
ShipService.getShips().success(handleSuccess);
});
app.factory('ShipService', function ($http) {
return {
getShips: function () {
return $http({
url: '/ceresdynamics/loadout.aspx/getships',
method: "post",
data: {},
headers: { 'content-type': 'application/json' }
});
}
};
});
标记:
<div class ="col-lg-12" ng-controller="ShipController as hangar" >
<div class =" row">
<div class="col-lg-4" ><input ng-model="query" type="text"placeholder="Filter by" autofocus> </div>
</div><br />
<div class="row">
<div ng-repeat="ship in hangar.ships | filter:query | orderBy:'name'">
<div class="col-lg-4">
<div class="panel panel-default">
<div>
<ul class="list-group">
<li class="list-group-item" >
<p><strong>ID:</strong> {{ ship.ShipID }} <strong>NAME:</strong> {{ ship.Name }}</p>
<img ng-src="{{ship.ImageFileName}}" width="100%" />
</li>
</ul>
</div>
</div><!--panel-->
</div> <!--ng-repeat-->
</div>
</div>
</div> <!--ng-controller-->
根据AngularJS版本1.2,默认情况下,阵列不再从Promise中展开,请参见迁移说明。我看到它仍然可以处理对象,但根据文档,您也不应该依赖它 请看这个答案 如果添加JSON.parsedata会发生什么 如果这样做有效,您应该添加一些检入,并可能将该逻辑迁移到服务中。或者对另一个答案使用$resource
非常感谢。parse做到了这一点,我想我之前已经尝试过了,但是我在这方面做了太多的工作,我记不起我用了哪种代码组合。旁注:我实际上必须将json.parsedata.d作为数据来处理。d是它返回的数组的名称。再次感谢!
Object
d: "[{"ShipID":"RDJ4312","Name":"Relentless","ImageFileName":"Ship2.png"},{"ShipID":"ZLH7754","Name":"Hercules","ImageFileName":"Ship3.png"},{"ShipID":"FER9423","Name":"Illiad","ImageFileName":"Ship4.png"}]"
__proto__: Object