我正在使用MEAN JS,我正在尝试编辑列表页面上的列表项,但它显示如下错误。我使用ng-init="find()"
作为列表发起了数据,ng-init="findOne()"
发布了个人数据。
Error: [$resource:badcfg] Error in resource configuration for action `get`. Expected response to contain an object but got an array
HTML 下面是控制器内的表单,它启动find()和findOne()。
<div ng-controller="OrdersController" ng-init="find()">
<div>
<div class="order-filter">
<div ng-repeat="order in orders">
<form ng-init="findOne()" name="orderForm" class="form-horizontal" ng-submit="update(orderForm.$valid)" novalidate>
<input type="text" class="" ng-model="order.title">
<input type="text" class="" ng-model="order.content">
<div class="form-group">
<input type="submit" value="Update" class="btn btn-default">
</div>
</form>
</div>
</div>
</div>
</div>
控制器
$scope.update = function (isValid) {
$scope.error = null;
if (!isValid) {
$scope.$broadcast('show-errors-check-validity', 'orderForm');
return false;
}
var order = $scope.order;
order.$update(function () {
$location.path('orders/' + order._id);
}, function (errorResponse) {
$scope.error = errorResponse.data.message;
});
};
$scope.find = function () {
Orders.query(function loadedOrders(orders) {
orders.forEach(appendFood);
$scope.orders = orders;
});
};
$scope.findOne = function () {
$scope.order = Orders.get({
orderId: $stateParams.orderId
});
};
答案 0 :(得分:0)
您需要检查订单服务,该服务可能正在使用$ resource来提供您的API请求(Orders.query)
看起来应该是这样的:
function OrdersService($resource) {
return $resource('api/orders/:orderId', {
orderId: '@_id'
}, {
update: {
method: 'PUT'
}
});
}
根据您使用的平均版本,样式可能会有所不同。默认情况下,$ resource查询会产生一系列结果,但如果出于某种原因,您已设置&#34; isArray&#34;为假,那么它会期待一个物体。