我使用滤镜编写了一个简单的i18n本地化函数,但是应用滤镜时会有延迟。在应用过滤器和交换文本之前,用户将很快看到“{{'formTitle'| i18n}}”。有没有办法解决?

这是代码示例,非常简单且相当普遍:

<label for="person_title">{{'formTitle' | i18n}}</label>
angular.module('localization')
.value('localizedTexts', {
    'formTitle': 'Titre '
});

angular.module('localization', [])
.filter('i18n', ['localizedTexts', function (localizedTexts) {
return function (text) {
    if (localizedTexts.hasOwnProperty(text)) {
        return localizedTexts[text];
    }
    return text;
};

最佳答案

考虑使用ng-cloak。引用自the AngularJS doc:

10-04 22:32