在'这个'之间指定对象之间的区别并在函数中返回对象本身

时间:2016-09-29 13:25:19

标签: javascript angularjs angularjs-controller

我是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
    }
}

3 个答案:

答案 0 :(得分:0)

您在angular.module.controller注册的功能不是工厂,它是构造函数

第二种方法更常用于Angular服务。

答案 1 :(得分:-3)

在第二种方法中改变这一点

this.hello:hello;
this.goodbye:goodbye;

而不是

hello:hello;
goodbye:goodbye;

答案 2 :(得分:-3)

在第二种方法中,你在函数调用中返回值,这就是为什么不工作,HTML不调用函数,HTML访问权限。

在第一种方法中,值是控制器的属性,这使您可以从HTML访问值。