动态指令编译传递正确的范围

时间:2013-05-13 16:55:27

标签: angularjs angularjs-directive angularjs-scope

我有动态指令编译任何给定的指令,问题是关于编译功能我需要为它提供一个正确的范围,Jus在想如何做到这一点?

下面我的指令示例,'指令'作用域输入是动态的,例如,它可以是<display-users data="users"/>用户是加载该指令的控制器的一部分。

虽然下面的编译工作正常,但由于它没有将编译代码与正确的范围相关联(在上面的控制器中),它不会显示用户。请有人帮忙吗?

theApp.directive('customCompile',
   function ($compile) 
   {
      var dir = 
      {
           replace: true, // replace the original html ? required for restrict = "M" 
           restrict: 'E', //can be one or more of E / A / C / M
           scope:{
             directive:'='
           },
           controller: function ($scope, $http, $attrs) // The controller for the directive
           {

           },
            compile: function compile($element, $tAttrs, $transclude) {
              return{
                 post: function postLink($scope, $iElement, $iAttrs){

                    $iElement.parent().append($compile($scope.directive.directive)($scope));    

                 }
              }

            }
       };

       return dir;
    }
);

0 个答案:

没有答案