javascript - 在 'this' 上指定对象与在函数中返回对象本身之间的区别

标签 javascript angularjs angularjs-controller

<分区>

我是 javascript 的新手。只是想知道在使用 controllerAs 方法时以下方法有什么区别,以及为什么第二种方法不起作用:

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

最佳答案

您使用 angular.module.controller 注册的函数不是工厂,而是构造函数

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

关于javascript - 在 'this' 上指定对象与在函数中返回对象本身之间的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39771610/

相关文章:

angularjs - Angular Material 对话框弹出窗口未显示

javascript - 如何更改 Controller 中指令的值以获取 angularJS 中的新数据?

javascript - 具有多个过滤器的过滤表

javascript - 错误 : <svg> attribute height: Expected length, "NaN"

javascript - 在 ng-repeat 中显示/隐藏嵌套的 Div

javascript - AngularJS 将新服务注入(inject)我的 Controller 时出现问题

angularjs - AngularJS 中 Controller 声明的区别

javascript - d3 强制拖动布局上的多个拖动功能

javascript - 如何用 Jasmine 模拟 JQuery?

javascript - typeof 函数修复/替代