Угловой контроллер не запускается - PullRequest
1 голос
/ 30 сентября 2019

Мой контроллер не запускается. Это должно быть глупо, но я не понимаю, почему.

Здесь найдите мою структуру кода.

Пожалуйста, помогите мне найти эту основную ошибку.

шаблон:

<!DOCTYPE html>
<html ng-app="attachmentsApp" ng-cloak="">
<head>
  <meta charset="utf-8"/>


  <script th:inline="javascript">
/*<![CDATA[*/
var source = [[${source}]];
var appContext = /*[[@{/}]]*/ '';
/*]]>*/
</script>

</head>
<body>

<div th:replace="include"></div>
<script th:src="@{/app/modules/attachments/scripts/attachmentsapp.js}"></script>
<script th:src="@{/app/modules/attachments/scripts/controllers/AttachmentsHomeCtrl.js}"></script>
<script th:src="@{/app/modules/attachments/scripts/services/AttachmentsHomeService.js}"></script>
</body>
</html>

Приложение:

angular
  .module('attachmentsApp', ['ngRoute'
    ]).run(['$rootScope', function($rootScope){
        $rootScope.appContext = window.appContext;
        $rootScope.language = window.language;
        $rootScope.source = window.source;
    }])
    .config(function($routeProvider) {
        $routeProvider.when('/', { templateUrl: window.appContext + 'app/modules/attachments/views/home.html', controller: "AttachmentsHomeCtrl" })
    });

Контроллер:

angular.module('attachmentsApp').controller('AttachmentsHomeCtrl', ['$scope','$rootScope','AttachmentsHomeService','$window', 
                                      function ($scope,$rootScope,AttachmentsHomeService,$window) {
    console.log($rootScope.source);
    debugger;
}]);

Сервис:

'use strict';
angular.module('attachmentsApp').service('AttachmentsService', [ '$http', '$rootScope', function($http, $rootScope){
    this.getForm = function(type) {
        debugger;
    }
    return this;
}]);

Большое спасибо

Ответы [ 2 ]

0 голосов
/ 30 сентября 2019

Это было имя службы.

AttachmentsHomeService как регистрация его в Controller AttachmentsService в определении службы

Большое спасибо за вашу помощь

0 голосов
/ 30 сентября 2019

Предлагая некоторые изменения в вашем HTML:

1) Определение и загрузка файлов перед их использованием : приложение ng использовалось до загрузки attachmentsapp.js файла в DOM

2) Порядок использования : служебный файл был загружен после его использования в контроллере

Он должен выглядеть следующим образом:

    <!DOCTYPE html>
    <html>
    <head>
      <meta charset="utf-8"/>


      <script th:inline="javascript">
    /*<![CDATA[*/
    var source = [[${source}]];
    var appContext = /*[[@{/}]]*/ '';
    /*]]>*/
    </script>
    <script th:src="@{/app/modules/attachments/scripts/attachmentsapp.js}"></script>

<script th:src="@{/app/modules/attachments/scripts/services/AttachmentsHomeService.js}"></script>

<script th:src="@{/app/modules/attachments/scripts/controllers/AttachmentsHomeCtrl.js}"></script>

    </head>
    <body ng-app="attachmentsApp" ng-cloak="">

    <div th:replace="include"></div>

    </body>
    </html>

Не уверен на 100%,но это должно работать. Попробуйте !!

Более того, следите за консолью.

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