AngularJS error: 'argument 'FirstCtrl' is not a function, got undefined',如何解决?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (38)

当我到达控制器的部分并在控制器之间共享数据时,我无法让它工作。

当我使用Chrome运行它时,我在控制台中得到以下错误:

'argument 'FirstCtrl' is not a function, got undefined'.

我真的不知道怎么回事。代码与本教程中的代码相同。

下面是我的HTML代码:

<!DOCTYPE html>
<html ng-app>
 <head>
    <title>AngularJS Tutorials: Controllers</title>
    <link rel="stylesheet" href="mystyle.css">
    <script src="http://code.angularjs.org/1.2.0-rc.2/angular.min.js"></script>

 </head>
 <body>

    <div ng-app="">
       <div ng-controller="FirstCtrl">   

         <h1> {{data.message + " world"}}</h1>

         <div class="{{data.message}}">
          Wrap me in a foundation component
         </div>
       </div>
    </div>

   <script type="text/javascript" src="main.js"></script>

 </body>
</html> 

下面是main.js的代码:

function FirstCtrl($scope){
   $scope.data = {message: "Hello"};
} 
提问于
用户回答回答于

在js文件中定义一个模块,并分配ng-app指示它。之后,将控制器定义为ng组件,而不是简单的函数:

<div ng-app="myAppName">  
<!-- or what's the root node of your angular app -->

JS部分:

angular.module('myAppName', [])
    .controller('FirstCtrl', function($scope) {
         $scope.data = {message: 'Hello'};
    });
用户回答回答于

在我的例子中,我没有在index.html中列出控制器js文件(例如,first-ctrl.js)。

所属标签

可能回答问题的人

  • 嗨喽你好

    7 粉丝480 提问8 回答
  • 人生的旅途

    10 粉丝484 提问7 回答
  • uncle_light

    5 粉丝518 提问7 回答
  • 无聊至极

    4 粉丝504 提问6 回答

扫码关注云+社区

领取腾讯云代金券