全局设置指令选项

时间:2016-02-18 11:34:20

标签: angularjs angularjs-directive

如何使用默认值设置指令选项(如(restrict,replace)的值),而不是为每个指令重新配置它们。

2 个答案:

答案 0 :(得分:1)

创建一个函数,该函数返回一个函数,该函数使用预定义的选项

创建指令

混淆?

function predefined_options_for_directive(options) {
  return function() {
    return Object.assign({
      restrict: 'A'
    }, options);
  }
}

angular.module("myApp", []).directive("myDirective",
    predefined_options_for_directive({
      template: "<h1>Yolo</h1>"
    })).controller("main", function($scope){
  $scope.testVar = 2;
})

您可以避免使用像browserify或webpack

这样的模块捆绑器将该功能作为全局功能

请注意,object.assign可能需要填充

示例codepen

答案 1 :(得分:0)

我认为没有办法做到这一点。无论如何,在每个指令中编写这些选项的问题是什么?认为这使您的代码更容易理解。