0

我正在尝试设置一个小型应用程序来学习如何设置 angular 1 项目(是的,1。我们在办公室 1,我想学习它)。

它的一部分工作,但当我添加另一个控制器时,它分崩离析。我的项目如下所示:

应用程序.js:

angular.module('app', [  
    'app.controllers',
    'ds.clock'
]);

时钟控制器.js:

angular.module('app.controllers', []).controller('clockController', 
    function($scope) {
        "use strict";

        $scope.Name = "Angular";
});

index.html(缩写):

 <body ng-app="app"> 


    <div ng-controller="clockController" style="float:right;width:20%x;margin:auto">

{{Name}}

    <div>
        <div><ds-widget-clock show-analog></ds-widget-clock></div>
    </div>

显示了我的时钟以及示波器上的“名称”属性。

但是,现在我尝试添加一个额外的控制器:

代码控制器.js

angular.module('app.controllers').controller('tickerController', 
    function($scope) {
        'use strict';

        $scope.Name = 'ticker'; });

我还在以下位置添加了一个链接<head>

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

当然还有 index.html 中的一个额外的 div

  <div ng-controller="tickerController" >

        {{ $scope.Name }}

    </div>

    <div ng-controller="clockController"........

但是现在我被以下错误所打动:

angular.js:14700 错误:[$controller:ctrlreg] 名为“clockController”的控制器未注册。

我的页面大部分都是空白的。

现在如何进行?

4

1 回答 1

1

看起来你尝试不正确。再创建一个模块,将控制器注册到模块中,并将其作为模块的一部分。那应该行得通。其他解决方案:

angular.module('app.controllers', [app.clockController])
.controller('clockController', function($scope) {
    "use strict";

    $scope.Name = "Angular";
});

这也应该有效。

于 2017-12-27T17:06:58.393 回答