2016-03-14 3 views
1

В моем контроллере displayEntries инициализируется из вызова ajax, а длина равна 3. Когда страница загружается, она по-прежнему показывает сообщение с данными до того, как моя таблица будет заполнена. Как я могу скрыть это сообщение до отображения отображаемых записей с данными.Скрыть элементы перед их отображением Angularjs

<span class="h4" ng-show="(displayedEntries | filter : { type : { name: type.name}}).length == 0">{{'public.TABLE_NO_DATA'|translate}}</span> 
+0

Дубликат http://stackoverflow.com/questions/12866447/prevent-double-curly-brace-notation-from-displaying-momentarily-before-angular-j – Dhiren

+1

Как о '.h4 {display: none; } 'в css? – Rayon

ответ

0

Существует указатель углового перевода, который поможет вам в этом. translate-cloak эта директива должна быть включена другим тегом скрипта. (Supposely доступен в src/directory из angular-translate

ваш заголовок

<script src="../src/directive/translate-cloak.js"></script> 

ваш HTML

<span class="h4" translate-cloak ng-show="(displayedEntries | filter : { type : { name: type.name}}).length == 0">{{'public.TABLE_NO_DATA'|translate}}</span> 

ваш CSS

.translate-cloak { 
    display: none !important; 
} 

EDIT: обновленный ответ EDIT2: вы можете следовать этой example

+0

Я уже делал это, но не работал для этого случая. он по-прежнему показывает этот диапазон, но после обновления страницы. – nolines

+0

Я ошибся с директивным именем 'ng-cloak'. Вы можете дать ему еще одну попытку. ;) –

+0

@nolines, простите, я сделал еще одну ошибку. :(путайте с переводом-плащом ---- Я переписываю свой ответ очень быстро –

Смежные вопросы