Фабрика AngularJS в другом файле - PullRequest
0 голосов
/ 07 января 2019

Я совершенно новичок в angularJS, так что это первый для меня. Я инициализировал угловое приложение, создал контроллер, и до этого момента все работало нормально. Проблема начинается, когда я создаю фабрику в другом файле, тогда я не знаю, как зарегистрировать его в контроллере. Когда я отсылаю фабрику к контроллеру, как я, я получаю Error: $injector:unpr Unknown Provider. Что я делаю не так?

var app = angular.module("app", []);

app.controller("appCtrl", function($http, appFactory) {
var that = this;
// Some stuff

}

Это фабрика в другом файле.

var app = angular.module("app");

app.factory("appFactory", function() {
var factory = {};
someData = [];


    factory.getData = function() {
        return someData;
  };
    return factory;
});

1 Ответ

0 голосов
/ 07 января 2019

Не создавать модуль снова. обязательно удалите эту строку "var app = angular.module (" app ");" из кода вашего заводского файла. и создать сервис, используя синтаксис геттера. ФАЙЛ HTML

    <html>
<head>
    <title>title</title>
    <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.9/angular.js"> </script>
    <script src="app.js" /> </script>
    <script src="service.js" /> </script>

</head>
<body ng-app="myApp" ng-controller="myCtrl">
    {{text}}
</body>

Контроллер

    var app = angular.module('myApp', []);
    app.controller('myCtrl', function($scope, myserv) {
    $scope.text = myserv.myFunc();
    });

Сервис / фабрика

    app.service('myserv', function() {
          this.myFunc = function () {
    return 'abc';
}

});

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...