【发布时间】:2016-07-02 21:26:10
【问题描述】:
我是 Angular.js 的新手,但遇到了一个问题。
我想集成这个插件 (https://github.com/pratyushmittal/angular-dragtable) 以便能够在我的表格中拖动列。
整个表是一个指令。每个<th> 也通过指令呈现。
<table>
<thead>
<tr>
<th ng-repeat="col in table.columns" my-column></th>
</tr>
</thead>
</table>
根据插件文档,我需要将 draggable 指令设置为 table。如果我手动设置它,它不会正确抓取我的列,因为此时没有呈现这些列,这不起作用。在 my-column 指令中,我正在等待最后一个
.directive('myColumn', ['$timeout', function($timeout) {
return {
restrict: 'A',
templateUrl: 'templates/column.html',
link: function(scope, element, attrs) {
if (scope.$last)
$timeout(function() {
//scope.$emit('lgColumnsRendered');
angular.element(element).closest('table').attr('draggable', 'draggable');
});
}
}
}])
当最后一次渲染时,我走到我的桌子前并设置了这个指令。可以肯定的是,它很愚蠢并且不起作用。我还阅读了有关 $compile 的信息,但我需要将属性指令添加到我的 DOM 中已经存在的表中。
也许我走错了路,不明白这样做的概念,但你明白了吗?我怎样才能做到这一点?
【问题讨论】:
-
我的回答对解决问题有帮助吗?如果没有 - 请对其发表评论,以便我们找到解决方案。如果它对您有用 - 请考虑将答案标记为已接受,以便其他人现在问题已解决。
标签: javascript angularjs html-table draggable angular-directive