首页 文章

具有此名称的AngularJS错误控制器未注册

提问于
浏览
0

我很头疼这个,我不是非常熟练的Angular,但是检查'今天dolar Value '的唯一方法 .

这是我的dolar.js

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

app.controller("DolarCtrl", function($scope, $http) {
    $scope.dailyIndicators = '';
    $http.get('https://mindicador.cl/api/dolar').then(function(res) {  //.success was changed for .then // 
        $scope.dailyIndicators = res.data.serie[0].valor;
    })
});

base.html文件

<body ng-app>
    <p ng-controller="DolarCtrl"> Dolar acutal: $ {{DolarCtrl.dailyIndicators}}</p>
</body>

但是当我刷新页面时,我收到了这个错误:

error: [$controller:ctrlreg]

http://errors.angularjs.org/1.7.5/$controller/ctrlreg?p0=DolarCtrl
       at angular.js:99
       at angular.js:11646
       at ga (angular.js:10677)
       at q (angular.js:10462)
       at g (angular.js:9801)
       at g (angular.js:9804)
       at angular.js:9666
       at angular.js:1947
       at m.$eval (angular.js:19356)
       at m.$apply (angular.js:19455)

有任何想法吗?我不知道你们是否需要更多信息 .

谢谢!

2 回答

  • 0

    您的代码中存在多个问题 .

    • ng-app 需要您创建的模块名称作为根模块 . 所以 ng-app="app" 必须在那里 .

    • 此外,由于您要将所有内容分配给 $scope ,因此您无需在 p 标记中执行 DolarCrtl. .

    在这里,尝试一下:

    <!DOCTYPE html>
    <html lang="en">
    
    <head>
      <meta charset="UTF-8">
      <meta name="viewport" content="width=device-width, initial-scale=1.0">
      <meta http-equiv="X-UA-Compatible" content="ie=edge">
      <title>Document</title>
      <script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.5/angular.min.js"></script>
    </head>
    
    <body ng-app="app">
      <p ng-controller="DolarCtrl"> Dolar acutal: $ {{dailyIndicators}}</p>
    </body>
    <script>
      var app = angular.module("app", []);
    
      app.controller("DolarCtrl", function($scope, $http) {
        $scope.dailyIndicators = '';
        $http.get('https://mindicador.cl/api/dolar').then(function(res) { //.success was changed for .then // 
          $scope.dailyIndicators = res.data.serie[0].valor;
        })
      });
    </script>
    
    </html>
    
  • 0

    Html应该如下所示:

    <html ng-app="app">
      <body ng-app>
        <p ng-controller="DolarCtrl"> Dolar acutal: $ {{dailyIndicators}}</p>
      </body>
    </html>
    

    Javascript应该如下所示:

    var app = angular.module("app", []);
    
    app.controller("DolarCtrl", function($scope, $http) {
        $scope.dailyIndicators = '';
        $http.get('https://mindicador.cl/api/dolar').then(function(res) {  //.success was changed for .then // 
            $scope.dailyIndicators = res.data.serie[0].valor;
        })
    });
    

相关问题