Angular 找不到我的工厂

Angular can not find my factory

所以我用 angular 创建了一个小工厂来获取我的本地 json 文件,现在我想将该数据传递给我的控制器,但它找不到工厂名称并显示 'unresolved variable'.

这是我的代码片段,我认为它现在是相关的。

(function () {

    var app = angular.module('locatieTool', ['ngRoute']);

    app.controller('teamController', function ($scope) {
        function init () {
            dataFactory.getTeams().success(function(data) {
                $scope.teams = data
            });
        }
        init();
        console.log($scope.teams);
    });

    // factory
    app.factory('dataFactory', function($http) {
        var team = {};

        //get local data
        team.getTeams = function() {
            return $http.get ('http://localhost:4040/');
        };
        return team;
    });

})();

我的目标只是控制台记录 $scope.teams,而不是我可以对数据做更多的事情。

您应该在控制器中包含 "dataFactory"

(function () {
    var app = angular.module('locatieTool', ['ngRoute']);

    app.controller('teamController', function ($scope, dataFactory) {
        function init () {
            dataFactory.getTeams().success(function(data) {
                $scope.teams = data
            });
        }
        init();
        console.log($scope.teams);
    });

    // factory
    app.factory('dataFactory', function($http) {
        var team = {};

        //get local data
        team.getTeams = function() {
            return $http.get ('http://localhost:4040/');
        };
        return team;
    }); })();

我相信你需要将你的工厂传递给控制器​​:

app.controller('teamController', function ($scope, dataFactory) {
    function init () {
        dataFactory.getTeams().success(function(data) {
            $scope.teams = data
        });
    }
    init();
    console.log($scope.teams);
});