Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs 为什么ng控制器不能与本例中的函数一起工作?_Angularjs - Fatal编程技术网

Angularjs 为什么ng控制器不能与本例中的函数一起工作?

Angularjs 为什么ng控制器不能与本例中的函数一起工作?,angularjs,Angularjs,我试图按照一个教程,但这个代码不适合我。有人能解释为什么以及如何解决它吗?我认为这与ng控制器有关,但不确定原因 AngularJS 2 {{author.name} {{author.title+','+author.company}} 函数MyController($scope){ $scope.author={ “姓名”:“雷·维拉”, “标题”:“工作人员作者”, “公司”:“老板”在这里输入代码“.com” } } 函数定义中缺少右括号 您缺少角度上下文 您的应用程序需要一个模块,

我试图按照一个教程,但这个代码不适合我。有人能解释为什么以及如何解决它吗?我认为这与ng控制器有关,但不确定原因


AngularJS 2
{{author.name}
{{author.title+','+author.company}}

函数MyController($scope){ $scope.author={ “姓名”:“雷·维拉”, “标题”:“工作人员作者”, “公司”:“老板”在这里输入代码“.com” } }
函数定义中缺少右括号

您缺少角度上下文

您的应用程序需要一个模块,因此您需要编写
ng app=“myApp”
,并使用该模块注册控制器功能

function MyController($scope) { /* ... */ }

angular.module('myApp, []).controller('MyController', MyController);

这将告诉Angular引导您的(myApp)应用程序并注册该特定控制器。

您的代码不适用于Angular 1.3+,因为您正在将控制器定义为全局函数

function MyController($scope) { /* ... */ }

angular.module('myApp, []).controller('MyController', MyController);
来自AngularJS文档:

从1.2迁移到1.3

控制器

由于3f2232b5,$controller将不再在窗口上查找控制器。在窗口中查找控制器的旧行为最初用于示例、演示和玩具应用程序。我们发现允许全局控制器功能会鼓励不良做法,因此我们决定在默认情况下禁用此行为

要迁移,请向模块注册控制器,而不是将其公开为全局模块 改为按如下方式定义控制器:


AngularJS 2
{{author.name}
{{author.title+','+author.company}}

角度模块('myApp',[]); 角度.module('myApp').controller('MyController',function($scope){ $scope.author={ “姓名”:“雷·维拉”, “标题”:“工作人员作者”, “公司”:“老板”在这里输入代码“.com” } });
这是哪一个教程?应该适用于angular<1.3,但不适用于angular 1.3+,因为您的控制器是globali添加了闭合大括号,但仍然不起作用。你知道为什么吗?你知道如何使用开发控制台来检查错误吗。这对解决这类问题非常有用。例如,是否确实在当前位置找到角度脚本?