为什么现在大家开发Angular应用都不用$scope改用this了?

我想知道这样有什么优点吗?还是为了什么?

比如下面这段代码:

 function DemoCtrl ($timeout, $q, $log) {
    var self = this;

    self.simulateQuery = false;
    self.isDisabled    = false;

    // list of `state` value/display objects
    self.states        = loadAll();
    self.querySearch   = querySearch;
    self.selectedItemChange = selectedItemChange;
    self.searchTextChange   = searchTextChange;

    self.newState = newState;
}
阅读 3.3k
2 个回答

$scope本身就是个奇怪的存在。。。this更加自然,本来就是维护controller这个对象本身,还整个scope概念实则多此一举。

个人觉得没什么特别的好处,而且官网也说了$scope注入的方式更常见,不过也不是完全没好处吧,文档里也写了:

图片描述

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题