Не удается найти контроллер AngularJS + Typescript - PullRequest
0 голосов
/ 24 апреля 2018

Я пытаюсь добавить машинопись в AngularJS и получаю следующую ошибку

Error: [$controller:ctrlreg] The controller with the name 'MyController' is not` registered

Кто-нибудь подскажет, что я делаю неправильно?

Я создал следующий класс

/// <reference path='references/_all.ts' />
var app = angular.module('shop', []);

class MyController {
    constructor($scope: any) {
        $scope.message = { title: "Hello World!!" };
    };
}

app.controller('MyController', MyController);

и html:

<html>
<head>
...
</head>
<body ng-app="shop">
    <div ng-controller="MyController">
            {{message.title}}
    </div>
</body>
</html>

Я использую grunt для его компиляции:

/// <reference path='references/_all.ts' />
var app = angular.module('shop', []);
var MyController = (function () {
    function MyController($scope) {
        $scope.message = { title: "Hello World!!" };
    };

    return MyController;
})();
app.controller('MyController', MyController);

1 Ответ

0 голосов
/ 24 апреля 2018

У вас есть файл ссылки с приложением?

<script src="./app.js"></script>

Вот мое решение:

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

var MyController = (function () {
    function MyController($scope) {
        $scope.message = { title: "Hello World!!" };
    }

    return MyController;
})();

app.controller('MyController', MyController);
<head>
  <meta charset="utf-8" />
  <title>AngularJS + Typescript controller cant be found</title>
  <script src="https://code.angularjs.org/1.5.4/angular.js"></script>
  <script src="./app.js"></script>
</head>

<body ng-app="shop">
  <div ng-controller="MyController">
      {{message.title}}
  </div>
</body>
</html>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...