控制器中的私有属性

时间:2014-08-02 18:47:11

标签: angularjs

随着我的控制器变得越来越复杂,我的属性不应该是mofified。在控制器上创建私有属性的最佳实践是什么,只能通过mutators访问?

一个人为的例子:

.controller('ProjectManagerController', function($scope){
    $scope.formVisible = false;

    $scope.showForm = function(){
        $scope.formVisible = true;
    }
 })

是否可以按惯例指示$ scope.formVisible是私有的(la pythons前导下划线)? 我应该使用某种关闭吗?

1 个答案:

答案 0 :(得分:2)

我喜欢这种方法。

.controller('ProjectManagerController', function($scope){
var formVisible = false;

$scope.showForm = function(value){
    if(value === undefined){
        return formVisible;
    }
    formVisible = value;
}
})

用法:

.showForm() //get value
.showForm(true/false); //to update value