[javascript] القيمة الافتراضية لقالب Angularjs في حالة Binding Null / Undefined (مع عامل التصفية)



1 Answers

لقد صنعت الفلتر التالي:

angular.module('app').filter('ifEmpty', function() {
    return function(input, defaultValue) {
        if (angular.isUndefined(input) || input === null || input === '') {
            return defaultValue;
        }

        return input;
    }
});

ليتم استخدامها على هذا النحو:

<span>{{aPrice | currency | ifEmpty:'N/A'}}</span>
<span>{{aNum | number:3 | ifEmpty:0}}</span>
Question

لدي ربط قالب يعرض سمة نموذج تسمى "التاريخ" وهو تاريخ ، باستخدام فلتر تاريخ Angular.

<span class="gallery-date">{{gallery.date | date:'mediumDate'}}</span>

حتى الان جيدة جدا. ولكن في هذه اللحظة ، إذا لم تكن هناك قيمة في حقل التاريخ ، فلن يعرض الربط أي شيء. ومع ذلك ، أود أن يعرض السلسلة "المتنوعة" إذا لم يكن هناك تاريخ.

يمكنني الحصول على المنطق الأساسي باستخدام مشغل ثنائي:

<span class="gallery-date">{{gallery.date || 'Various'}}</span>

ومع ذلك ، لا يمكنني الحصول عليها للعمل مع فلتر التاريخ:

<span class="gallery-date">{{gallery.date | date:'mediumDate' || "Various"}}</span>

كيف يمكنني استخدام المشغل الثنائي إلى جانب مرشح التاريخ؟







Related