我是javascript的新手。只是想知道使用控制器方法时以下内容之间有什么区别,以及为什么第二种方法不起作用:
angular.module("app")
.controller("angularController", angularController);
function angularController() {
this.hello = "hello";
this.goodbye = "goodbye";
}
和
angular.module("app")
.controller("angularController", angularController);
function angularController() {
var hello = "hello";
var goodbye = "goodbye";
return {
hello: hello,
goodbye: goodbye
}
}
答案 0 :(得分:0)
您在angular.module.controller
注册的功能不是工厂,它是构造函数。
第二种方法更常用于Angular服务。
答案 1 :(得分:-3)
在第二种方法中改变这一点
this.hello:hello;
this.goodbye:goodbye;
而不是
hello:hello;
goodbye:goodbye;
答案 2 :(得分:-3)
在第二种方法中,你在函数调用中返回值,这就是为什么不工作,HTML不调用函数,HTML访问权限。
在第一种方法中,值是控制器的属性,这使您可以从HTML访问值。