Angularjs “资源”;CartResource.get不是一个函数&引用;
在我的应用程序中,我定义了购物车资源Angularjs “资源”;CartResource.get不是一个函数&引用;,angularjs,ngresource,Angularjs,Ngresource,在我的应用程序中,我定义了购物车资源 .factory('CartResource', function ($resource) { return $resource('/api/Cart/:id'); }); 在模块上。在我的登录控制器中 (function () { "use strict"; angular.module('ShoppingCart') .controller('loginController', ['CartRe
.factory('CartResource', function ($resource) {
return $resource('/api/Cart/:id');
});
在模块上。在我的登录控制器中
(function () {
"use strict";
angular.module('ShoppingCart')
.controller('loginController', ['CartResource','cart', loginController]);
function loginController(CartResource, cart) {
var vm = this;
vm.model = cart.model;
vm.login = login;
function login(username, password) {
CartResource.get({ username: username, password: password }, function (data) {
console.log(data);
})
}
};
}());
我正在注入CartResource并试图通过传递用户名和密码来获取用户对象。但是,每当我调用login()
,它都会说CartResource.get
不是一个函数。我做错了什么?我在另一个应用程序中做了几乎完全相同的事情,但在这里似乎不起作用。我在index.html
中包含脚本文件的顺序是否有问题
<script src="app/app.module.js"></script>
<script src="app/app.config.js"></script>
<script src="app/controllers/services/Cart.resource.js"></script>
<script src="app/controllers/loginController.js"></script>
以某种方式改变依赖项的顺序似乎可以解决这个问题。遗憾的是,我没有更具体的补充 似乎只是个打字错误。构造函数(loginController(cart,CartResource)
)的显式注释列表('CartResource','cart'
)和参数列表的顺序必须相同,在您的情况下,它们是反向的。嗯,我修复了顺序,但实际上没有修复它。我仍在获取CartResource.get不是一个函数
。我更新了OP,使其具有固定的orderLogCartResource
-它显示了什么?但是没有car
注入,因为我们不知道是什么。而且效果很好嗯,你说得对。去掉对cart的引用似乎确实能使它工作。我还试着把购物车放在最后,这似乎也解决了问题。奇怪。