如何根据变量更改指令使用的控制器?

时间:2014-12-12 08:53:24

标签: javascript angularjs

我希望能够根据范围变量的值为指令提供不同的控制器。一直在搜索这些行,但所有结果都是关于$route的配置。所以这是一个样本:

我想根据dir1的值为我的指令model.something提供不同的控制器。

以下代码。

angular.module('mod1', [])
.directive('dir1', function() {
  return {
    restrict: 'A',
    scope: {
      model: '='
    },
    controller: function($scope) {
      return control($scope.model.something);
    }
  };
});
function control(param) {
    if(param == 1) return ctrl1;
    else if(param == 2) return ctrl2;
    else return ctrl3;
}
function ctrl1 ($scope,$http) {
    //something1
}
function ctrl2 ($scope,$http) {
    //something2
}
function ctrl3 ($scope,$http) {
    //something3
}

需要更多信息??

0 个答案:

没有答案