angularjs:定制资源

angularjs:定制资源,angularjs,angularjs-service,Angularjs,Angularjs Service,我在我的应用程序中遵循文件夹结构 内部服务我添加了以下代码 define(['./module'], function(services) { 'use strict'; services.factory('CreditCard', ['$http', function($http) { function CreditCardFactory() { function parseMessage(message) { if (message.response) {

我在我的应用程序中遵循文件夹结构

内部服务我添加了以下代码

 define(['./module'], function(services) {
'use strict';
services.factory('CreditCard', ['$http', function($http) {

function CreditCardFactory() {

    function parseMessage(message) {
        if (message.response) {
            return message.response;
        }
    }

    function CreditCard(value) {
        angular.copy(value || {}, this);
    }

    CreditCard.$get = function(id) {
        var value = this instanceof CreditCard ? this : new CreditCard();
        $http({
            method: 'GET',
            url: '/creditcards/' + id
        }).then(function(response) {
            var data = response.data;
            if (data) {
                angular.copy(parseMessage(data), value);
            }
        });
        return value;
    };

    CreditCard.prototype.$get = function(id) {
        CreditCard.$get.call(this, id);
    };

    return CreditCard;

  }

return CreditCardFactory;

}]);


});
我遵循了这个问题,并在工厂中添加了上述代码

在这个问题上 app.controller('CreditCardCtrl',函数($scope,CreditCard){ $scope.creditCard=creditCard().get(3); }); 添加CreditCard时没有添加依赖项,因为我们添加了诸如$scope和$http之类的default angular服务

如果我不添加依赖项 controllers.controller('myListCtrl'、['Phone'、'Phone1'、'loginForm'、'$scope'、'$http'、'user\u resources',函数(Phone、Phone1、loginForm、$scope、$http、user\u resources、CreditCard){ 然后它给出未定义的,若我将其作为依赖项添加到我的控制器中,然后尝试调用get函数,那个么不会返回响应

     controllers.controller('myListCtrl',    ['Phone','Phone1','loginForm','$scope','$http','CreditCard',function(Phone,Phone1,loginForm,userSrv,$scope,$http,user_resources,CreditCard){

'CreditCard'
在本例中没有声明为依赖项,因此它没有被注入,并且
未定义

controllers.controller('myListCtrl', ['Phone','Phone1','loginForm','$scope','$http','user_resources',
    function(Phone,Phone1,loginForm,$scope,$http,user_resources,CreditCard){
controllers.controller('myListCtrl', ['Phone','Phone1','loginForm','$scope','$http','user_resources','CreditCard',
    function(Phone,Phone1,loginForm,$scope,$http,user_resources,CreditCard){
要解决此问题,请添加
“信用卡”

controllers.controller('myListCtrl', ['Phone','Phone1','loginForm','$scope','$http','user_resources',
    function(Phone,Phone1,loginForm,$scope,$http,user_resources,CreditCard){
controllers.controller('myListCtrl', ['Phone','Phone1','loginForm','$scope','$http','user_resources','CreditCard',
    function(Phone,Phone1,loginForm,$scope,$http,user_resources,CreditCard){

在第二个示例中,缺少一些依赖项,导致其他依赖项与函数参数相比顺序错误

controllers.controller('myListCtrl', ['Phone','Phone1','loginForm','$scope','$http','CreditCard',
    function(Phone,Phone1,loginForm,userSrv,$scope,$http,user_resources,CreditCard){
按正确顺序添加缺少的依赖项

controllers.controller('myListCtrl', ['Phone','Phone1','loginForm','userSrv','$scope','$http','user_resources','CreditCard',
    function(Phone,Phone1,loginForm,userSrv,$scope,$http,user_resources,CreditCard){

将依赖项声明为controllers.controller('myListCtrl'、['Phone'、'Phone1'、'loginForm'、'$scope'、'http'、'user_resources'、'CreditCard',函数(Phone、Phone1、loginForm、$scope、$http、user_resources、CreditCard){console.log(CreditCard);未定义且console.log(CreditCard())抛出未定义的错误不是作用域中的函数。$Scope.loadMyLeaveList