AngularJS - 创建控制器的区别

21 浏览
0 Comments

AngularJS - 创建控制器的区别

我对AngularJS还不熟悉。当我创建一个控制器时,我看到了两个不同的示例,展示了不同的创建方式。然而,大多数人使用的那种方法却不起作用。

第一个示例的问题在于,它要么找不到模块,要么找不到函数。结果只显示为{{type}} {{name}}。但是如果我在plnkr上尝试,第一个示例是可以工作的。

我得到的错误是'dataControl'不是一个函数,得到了undefined。

如果我将我的HTML代码设置为这样。

然后是第一个不起作用的控制器。

其次,另一个能起作用的控制器。

使用第二种方式有什么不足之处吗?

0
0 Comments

在上述内容中,问题的出现原因是在创建控制器时出现了错误,导致抛出了“Error: Argument 'dataControl' is not a function, got undefined”错误。解决方法是删除<html ng-app>标签。

以下是整理后的

尝试以下代码:

{{type}} {{data}}
  • {{values.dataName}} {{values.dataValue}}

var app = angular.module('docsBindExample', []);
app.controller('dataControl', function ($scope) {
   $scope.name = 'Value Is here';
});

我更新了主贴中的代码,尝试了新的代码,但是出现了错误:“Error: Argument 'dataControl' is not a function, got undefined”。解决方法是删除<html ng-app>标签。

0
0 Comments

AngularJS中创建控制器的两种方法的区别是什么?为什么第一种方法会出现错误?如何解决这个问题?

在AngularJS中,创建控制器有两种方法:一种是在定义模块时直接注册控制器,另一种是在定义模块之后再注册控制器。对于大型应用程序来说,第一种方法非常方便,因为您可以在定义模块时同时注册控制器、过滤器等。然而,第一种方法可能会出错,可能的原因是您没有定义docsBindExample模块。您可以尝试以下代码来解决这个问题:

var docsBindExample = angular.module('docsBindExample', []);

然后再定义您的控制器。如果在找到模块时出现"'dataControl' is not a function, got undefined"错误,请检查您的模块是否正确定义。

0
0 Comments

AngularJS中创建控制器的两种方法之间的差异是什么?

在AngularJS中,创建控制器有两种方法,即通过将控制器函数附加到模块的方式和在HTML标记中直接声明控制器的方式。这两种方法在语法上都是完美的,但是第一种方法比第二种方法更推荐。在第一种方法中,控制器将附加到该模块,并且这种做法对于构建应用程序是一种良好的实践。

具体详情请访问以下链接:

https://docs.angularjs.org/guide/controller

当执行你的代码时没有错误。你使用了什么