我对Angular比较新,遇到了一个我无法弄清楚我做错了什么的问题。
在我进入编辑记录屏幕之前,事情一直有效。 从列表页面(这可以工作),controller1列出所有数据。您可以单击要编辑的项目的编辑。这会加载控制器2。从那里我无法访问数组中的元素。然而,我可以看到整个阵列。
我也在运行我的服务数据。该应用使用ui-routing,因此$routeParams
已更改为$stateParams
。
代码: 服务返回数据。这部分工作正常,并返回它应该。
.service('attendeeService', function (sfDataProvider) {
var $attendeeDetailList = [];
var $strValue = 'test string';
$attendeeDetailList = sfDataProvider.getAttendeeList();
return {
getAttendees:function () {
return $attendeeDetailList;
},
getString:function () {
return $strValue;
},
addAttendee:function (attendeeName) {
},
deleteAttendee:function (id) {
}
};
Controller1列出视图中的数组。工作正常
.controller( 'AttendeeCtrl', function AttendeeCtrl( $scope, titleService, attendeeService ) {
titleService.setTitle( 'Attendee Badges' );
$scope.strValue = attendeeService.getString();
$scope.attendeeDetailList = attendeeService.getAttendees();
})
Controller2 - 我可以让strValue继续进行但无法访问数组中的对象fullListAttendees来编辑项目。
.controller( 'AttendeeEditCtrl', function ( $scope, $stateParams, titleService, attendeeService ) {
var $attendeePerson = [];
$scope.fullListAttendees = attendeeService.getAttendees();
$scope.attendeePerson = $scope.fullListAttendees[$stateParams.id];
$scope.strValue = attendeeService.getString();
});
任何想法或想法将不胜感激。我不知道它是否重要,但这是从用于角度的ng-boilerplate开始的。
感谢您的帮助