0

내 라벨의 AngularJS 지시문/모델로드 문제가 있습니다. 테이블을 만드는 지시문이 있습니다.처음로드시 라벨이 누락 됨

<div class="col-xs-12" ng-cloak> 
    <custom-data-table grid-options="ctrl.gridOptions"></custom-data-table> 
</div> 

그리고 내 컨트롤러 :

function MyController(allInjections) { 

    var ctrl = this; 

    //Load some stuff 

    ctrl.gridOptions = []; 

    function initCtrl() { 

     ctrl.gridOptions = { 
      // all fields 
     }; 

     // some other stuff 
    } 

    initCtrl(); 
} 

이 지침의 작품을 아래의 코드에서 볼 수 있듯이 모든 헤더의 이름은 "작업"하나를 제외하고 컨트롤러에서 전달하여 동적으로 내장되어 있습니다 대부분의 경우,하지만 몇 번, 주로 페이지를 처음로드 할 때, 내 레이블이로드되지 않는 이유가 있습니다. 사진을보고.

아래 이미지는 내가 직면 한 문제를 보여줍니다. 마지막으로

function CustomDataTable(allInjections) { 

    var _dirPath = 'table.html'; 

    var directive = { 
     restrict: 'EA', 
     templateUrl: _dirPath, 
     scope: { 
      gridOptions: '=', 
      checks: '=' 
     }, 
     link: linkFunc 
    }; 

    function linkFunc($scope) { 

     console.trace($scope.gridOptions); 

     //do some stuff 
    } 
} 

:

table 1

이 테이블 이미지는 내가

table 2

가 나는 것처럼 수신하고 무엇을보고 내 지시에 로그를 추가 한 기대하고있는 무슨이다 , 그리고 무슨 일이 일어나고 있는지 알아 내려고 시도하기 위해 디버깅을 한 후, 나는 내 지시문이 두 번로드되고 있음을 알았다. (나는 k 지금 정확히 왜) 레이블 작업. 라벨은 내가 비활성화 캐시 테스트입니다

log 2

를로드 할 때 라벨이 잘

log 1

로그인로드되지 때 로그에

로그인을 봐.

답변

0

ng-cloak 지시문을 사용할 수 있습니다. ngCloak 지시문은 AngularJS html 템플릿이 응용 프로그램이로드되는 동안 브라우저가 원시 (컴파일되지 않은) 형식으로 잠깐 표시하는 것을 방지하는 데 사용됩니다. 이 링크 확인 : https://docs.angularjs.org/api/ng/directive/ngCloak

+0

html 코드 단편에서 볼 수 있듯이 이미 내 div에 ngCloak을 사용하고 있습니다. – kaahxd