我正在研究一个动态可编辑的表指令,有一半时间我刷新页面时,角度组件被解析为它们变量的值,并且它在字面上{{variable}}呈现的时间减少了一半这页纸。以下是该问题的一个问题:
http://plnkr.co/edit/WvzKYQ?p=preview
angular.module('myApp').directive('hmGrid', function ($window) {
...
link: function (scope, element, attrs) {
...
controller: function ($scope) {
...
});
我感觉链接和控制器中的代码(在我的指令中)没有遵循正确的编程习惯,因此不会在页面呈现时进行编译。有人可以帮助重新组织代码,以便每次都能成功呈现吗?
答案 0 :(得分:0)
尝试将初始化gridoptions
的代码移动到指令的控制器中,而不是在单独的控制器中初始化gridoptions,然后将它们传递给指令:
controller: function ($scope, $http) {
$http.get('filename.txt').
success(function(data) {
$scope.data = data.data;
$scope.headers = data.headers;
$scope.headernames = data.headernames;
$scope.gridShowing = true;
$scope.editShowing = false;
$scope.addShowing = false;
$scope.idx = 0;
$scope.reversed = false;
$scope.sortColumn = '';
});
然后你可以从你的指令中删除gridoptions
属性,删除不必要的额外控制器,你的指令应该每次都有效。
更新了plunker here。