动态创建指令

时间:2016-10-26 08:37:40

标签: angularjs directive

我已经动态创建了一个指令,然后我将数据传递给了这个指令,但是这个指令没有呈现,我可以访问传递的数据到链接函数,这里我的代码段代码:

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');
        }
    };
}])

2 个答案:

答案 0 :(得分:2)

不确定你的帖子是否成功,但有一件事看不起: $text = ''; for($i=1;$i<10;$i++){ $text .= $i.PHP_EOL; } $file = fopen('text.txt','a'); fwrite($file,$text); fclose($file); 应为restrict: 'A',因为您将指令用作元素,而不是属性。

答案 1 :(得分:1)

传递给指令的参数始终显示为html属性:在您的代码中,您缺少一些冒号""

将您的$compile行更改为:

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