繁体   English   中英

AngularJS控制器功能最佳实践

[英]AngularJS controller functions best practices

如果要从模板引用我的角度控制器功能,则应将该功能放在$scope ,如下所示:

[template]
<button ng-click="doSomething()"></button>

[controller]
$scope.doSomething = function(){};

但是其他函数(以及不需要监视的控制器变量)又如何呢?那些我不会在模板中引用的函数。

我也应该把它们都放在“ $ scope”中吗? 这对性能不好吗? $scope之外声明这样的功能是否有些麻烦?

您可以简单地将其定义为控制器功能内的私有功能。

请注意,我也更喜欢函数声明语法,而不是将函数表达式分配给变量,因为它使您可以在底部声明所有函数,这可以减少尝试查看正在发生的情况时的认知负担。

app.controller('MainCtrl', function ($scope) {
  $scope.exposedFn = exposedFn;

  function exposedFn() {
      fnNotExposed();
  }

  function fnNotExposed() {}

});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM