2016-10-26 101 views
1

我創建了一個動態的指令,然後我通過數據給這個指令,但是這個指令不渲染,我可以訪問傳遞到數據鏈接功能,在這裏,我的代碼片段:動態創建指令

var table = $compile("<user-priv data=object ><user-priv>")($scope); 
angular.element(document).find('#privModal').find('.modal-body').append(table); 
angular.element(document).find('#privModal').modal('show') 

這裏是

.directive('userPriv', [function() { 
    return { 
     restrict: 'A', 
     scope: { 
      data: '=?' 
     }, 
     templateUrl: 'file/angular/templates/privList.html', 
     link: function(scope, iElement, iAttrs) { 
      console.warn(scope.data); 
     }, 
     controller: function($scope) { 
      console.log('test'); 
     } 
    }; 
}]) 

回答

1

傳遞給指令參數始終顯示爲HTML屬性指令代碼:在你的代碼中缺少某些冒號""

更改$compile行:

var table = $compile("<user-priv data="object" ><user-priv>")($scope); 
+0

感謝您的有趣,但它不是工作 –

2

不知道你什麼成功與否,從您的文章,但有一件事看起來關:
restrict: 'A'應該restrict: 'E'因爲你使用的指令作爲一個元素,而不是一個屬性。

+1

感謝您的通知...我沒有注意到這個錯誤,崇高的自動完成是原因。非常感謝 :) –