在加载视图时,使用ng-init在控制器上运行函数是一种反模式吗?

时间:2015-02-18 22:56:55

标签: angularjs angularjs-scope karma-jasmine

为了使测试更容易,我一直在使用ng-init

启动我的控制器

所以在我的控制器中我有这样的代码

$scope.initiate = function () {
    myResource.makeXhrRequest();
}

我的视图代码如下所示

<div data-ng-init=initiate()"> ALL MY HTML IN HERE </div>

好处是,当我进行单元测试时,我可以仔细测试myResource.makeXhrRequest();被调用。

如果没有这种方法,我发现每次测试都需要模拟xhrRequest

我的问题是“这被认为是一种反模式吗?”

1 个答案:

答案 0 :(得分:0)

当我想重用控制器/指令时,我个人只使用ng-init,但我想要进行一些特定于视图的初始化。只要你不滥用它我就不认为是反模式