gpt4 book ai didi

javascript - 带有 Angular $resources 的 query(), "Undefined is not a function"

转载 作者:搜寻专家 更新时间:2023-11-01 05:05:23 26 4
gpt4 key购买 nike

所以我正在尝试使用 Angular。我创建了以下模块。

var archiveModule = angular.module('archiveModule', ['ngResource']);

archiveModule.factory('Archive', ['$resource',
function($resource) {
return $resource('/data/archive/:doc.json', {}, {
query: { method:'GET', params:{ doc: undefined }, isArray:true }
});
}]);

archiveModule.controller('ArchiveControl', ['$scope', '$http', 'Archive',
function ($scope, Archive) {
$scope.items = Archive.query();
$scope.orderProp = 'name';
}]);

我的模板中的一切都发生在:

<div class="container" ng-app="archiveModule">
<div ng-controller="ArchiveControl">

我在页面底部包含 Angular 脚本:

<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.2.12/angular.js"></script>
<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.2.12/angular-resource.js"></script>
<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.2.12/angular-route.js"></script>

Chrome 报告 TypeError: undefined is not a function,然后返回到行 $scope.items = Archive.query();

根据 http://docs.angularjs.org/api/ngResource .$resource,查询是 $resource 的一部分,我根据 http://docs.angularjs.org/tutorial/step_11 对我的资源进行建模我不确定这里出了什么问题。

最佳答案

您的参数与声明的依赖项不一致。它将 $http 注入(inject) Archive...

archiveModule.controller('ArchiveControl', ['$scope', '$http', 'Archive',
function ($scope, Archive) {

删除 '$http' 它应该可以工作...

archiveModule.controller('ArchiveControl', ['$scope', 'Archive',
function ($scope, Archive) {
$scope.items = Archive.query();
$scope.orderProp = 'name';
}]);

关于javascript - 带有 Angular $resources 的 query(), "Undefined is not a function",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21769364/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com