javascript - Angular JS 1.5.X 显示 Controller 错误

标签 javascript angularjs web

我正在使用 angular.js 版本 1.5.X 编写一个简单的 Controller 示例,其中有一些值得注意的问题。该问题仅在 Angular JS 版本 1.5.X 中遇到,但我已经使用 Angular JS V 1.2.X 测试了代码,它按预期工作。我不确定我是否在以过时的方式做某事?我无法理解控制台日志。

我的代码 -

<!doctype html>
<html lang="en" ng-app="">
<head>
  <meta charset="UTF-8">
  <title>Angular Demo</title>
  <script src="lib/angular/angular.min.1.5.X.js"></script>
</head>
<body>

<div ng-controller = "MyController">
  <h1>{{author.name}}</h1>
  <p>{{ author.title + ', ' + author.company }}</p>
</div>

<script>
function MyController($scope) {
  $scope.author = {
    'name' : 'Ray Villalobos',
    'title' : 'Staff Author',
    'company' : 'Lynda.com'
  }
}
</script>
</body>
</html>

结果:

{{作者.name}}

{{ 作者.标题 + ', ' + 作者.公司 }}

控制台日志:

angular.min.1.5.X.js:118 Error: [ng:areq] http://errors.angularjs.org/1.5.8/ng/areq?p0=MyController&p1=not%20a%20function%2C%20got%20undefined
    at Error (native)
    at file:///G:/Programming-Joy/Web/JavaScript/JavaScript%20Essential%20Training%20Lynda/AngularJs/lib/angular/angular.min.1.5.X.js:6:412
    at sb (file:///G:/Programming-Joy/Web/JavaScript/JavaScript%20Essential%20Training%20Lynda/AngularJs/lib/angular/angular.min.1.5.X.js:23:18)
    at Pa (file:///G:/Programming-Joy/Web/JavaScript/JavaScript%20Essential%20Training%20Lynda/AngularJs/lib/angular/angular.min.1.5.X.js:23:105)
    at file:///G:/Programming-Joy/Web/JavaScript/JavaScript%20Essential%20Training%20Lynda/AngularJs/lib/angular/angular.min.1.5.X.js:89:310
    at ag (file:///G:/Programming-Joy/Web/JavaScript/JavaScript%20Essential%20Training%20Lynda/AngularJs/lib/angular/angular.min.1.5.X.js:72:419)
    at p (file:///G:/Programming-Joy/Web/JavaScript/JavaScript%20Essential%20Training%20Lynda/AngularJs/lib/angular/angular.min.1.5.X.js:64:262)
    at g (file:///G:/Programming-Joy/Web/JavaScript/JavaScript%20Essential%20Training%20Lynda/AngularJs/lib/angular/angular.min.1.5.X.js:58:481)
    at g (file:///G:/Programming-Joy/Web/JavaScript/JavaScript%20Essential%20Training%20Lynda/AngularJs/lib/angular/angular.min.1.5.X.js:58:498)
    at g (file:///G:/Programming-Joy/Web/JavaScript/JavaScript%20Essential%20Training%20Lynda/AngularJs/lib/angular/angular.min.1.5.X.js:58:498)

最佳答案

对于 Angular 1.3 以上版本,您需要像这样定义 Controller ,

 app.controller("MyController" , function($scope)
   {
       $scope.author = {
      'name' : 'Ray Villalobos',
      'title' : 'Staff Author',
      'company' : 'Lynda.com'
      }
   }); 

DEMO APP

关于javascript - Angular JS 1.5.X 显示 Controller 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39310235/

相关文章:

javascript - 如何设置collectionsjs等于并比较?

angularjs - 如何设置 ui-router 嵌套 View

javascript - AngularJS:组件中的相互依赖

html - 左右 CSS 属性无法与输入组 Bootstrap 4 一起正常工作

Java 自动填写网页表单

javascript - 如何将html中的ng-model值获取到javascript

javascript - 如何从本地文件 url ("file:///"访问react-app构建,而不使用任何HTTP服务器?

javascript - 旋转木马滑动不适用于 iframe 视频

php - 如何使用 jQuery 发送两个输入

javascript - 从子 Angular 函数更新父 Controller 值