תחומים
    • הרשמה
    • התחברות
    • חיפוש
    • קטגוריות
    • פוסטים אחרונים
    • משתמשים
    • חיפוש
    חוקי הפורום

    date ב-input, ו-ngModel אנגולרי

    תכנות
    2
    4
    69
    טוען פוסטים נוספים
    • מהישן לחדש
    • מהחדש לישן
    • הכי הרבה הצבעות
    תגובה
    • הגב כנושא
    התחבר בכדי לפרסם תגובה
    נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
    • Y
      yyy נערך לאחרונה על ידי yyy

      יש לי מחלקה CLS הכתובה ב-TS שיש בה משתנה תאריך, מסוג Date.
      אני רוצה להציג אותו ב-HTML אבל בד בבד לפתוח אותו לעריכה כך:

      <input type="date" [(ngModel)]="CLS.BirthDate">
      

      הפלט המוצג אינו התאריך אלא רק המבנה שלו:

      dd/mm/yyyy
      

      (כאשר יש אופציה לשנות את התאריך ואז הוא יהיה מוצג.)
      אומנם ב-html שמרונדר ע"י אנגולר התאריך קיים, אלא שהוא לא מוצג כשורה.

      <input _ngcontent-spd-c50="" type="date" ng-reflect-model="**Tue Dec 17** 1991 00:00:00 GMT+0" class="ng-pristine ng-valid ng-touched">
      

      כיצד ניתן להציג את התאריך בצורה נורמלית?
      תודה רבה.

      רפאל תגובה 1 תגובה אחרונה תגובה ציטוט 0
      • רפאל
        רפאל @yyy נערך לאחרונה על ידי רפאל

        תיישם את זה כך:

        <input  type="date" [ngModel]="CLS.BirthDate | date:'yyyy-MM-dd'" (ngModelChange)="CLS.BirthDate = $event"/>
        

        הפתרון הוא לחלק את הTwo-ways binding לשניים: One-way binding ו Event Binding.
        למעשה [(ngModel)] כולל את שניהם, [ ] מייצג One-way binding, ו ( ) מייצג Event binding.
        הסיבה שאינך יכול להשתמש עם התחביר המשולב [( )] היא השימוש בDatePipe (אנגולר לא מאפשרת שימוש בPipes בשילוב עם Two-ways binding)

        ועוד Convention קטן שלא הרבה יודעים:
        כל Output בעל שם דומה ל Input קיים, בתוספת המילה Change יכול לשמש עבור Two-ways binding ללא כל הגדרה נוספת.

        Y תגובה 1 תגובה אחרונה תגובה ציטוט 5
        • Y
          yyy @רפאל נערך לאחרונה על ידי

          @רפאל ברוך תהיה. זה אכן עובד.
          מה הסיפור של ה

          $event
          

          בסוף?

          רפאל תגובה 1 תגובה אחרונה תגובה ציטוט 1
          • רפאל
            רפאל @yyy נערך לאחרונה על ידי רפאל

            @yyy הevent$ מייצג את הערך שנשלח ע"י הOutput של הComponent\Directive הפנימי.

            תגובה 1 תגובה אחרונה תגובה ציטוט 1
            • 1 / 1
            • פוסט ראשון
              פוסט אחרון
            בא תתחבר לדף היומי!