דילוג לתוכן
  • דף הבית
  • קטגוריות
  • פוסטים אחרונים
  • משתמשים
  • חיפוש
  • חוקי הפורום
כיווץ
תחומים

תחומים - פורום חרדי מקצועי

💡 רוצה לזכור קריאת שמע בזמן? לחץ כאן!
  1. דף הבית
  2. תכנות
  3. ריענון מסך באנגולר לאחר שינוי

ריענון מסך באנגולר לאחר שינוי

מתוזמן נעוץ נעול הועבר תכנות
6 פוסטים 4 כותבים 319 צפיות
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • yyyY מנותק
    yyyY מנותק
    yyy
    כתב ב נערך לאחרונה על ידי yyy
    #1

    נניח יש לי קומפוננטה list, המקוננת בקומפוננטה בשם ScreenList.
    ה-TS של ScreenList נראה כך:

      public itemArr: itemModel[] = [];
     constructor(private dataSvc: DataService) {
        this.itemArr = dataSvc.getFromLocalStorage("itemArr");
      }
    

    ה-HTML של ScreenList נראה כך:

    <app-ScreenList [itemArr]="itemArr" ></app-ScreenList>
    

    ה-TS של List נראה כך:

    @Input() itemArr!: itemModel[];
    

    ה-HTML של List נראה כך:

    <div *ngFor="let item of itemArr" ">{{item.value}}</div>
    

    במילים פשוטות אני שולח מערך מקופוננטת האב, לקופוננטת הבן אשר תפקידה להציג את המערך שהתקבל.
    כעת אני רוצה למחוק באמצעות קליק על כפתור בקומפוננטת הבן, איבר אחד במערך, לשם כך יש לי פונקציה ב-dataSvc שמוחקת את האיבר.
    כעת בפעם הבאה שאטען את הקומפוננטה אכן לא יופיע הפריט שנמחק. השאלה כיצד ניתן לעשות שמתי שאלחץ על "מחק" הפריט יעלם באופן מיידי?
    תודה רבה.

    katzK רפאלר י 3 תגובות תגובה אחרונה
    0
    • katzK מנותק
      katzK מנותק
      katz
      השיב לyyy ב נערך לאחרונה על ידי katz
      #2

      @yyy אולי להשתמש ב- splice כדי להסיר אותו ידני מהמערך עד שהנתונים יתעדכנו
      תוסיף אינדקס בלולאה ככה, ואז תשלח למחוק את האינדקס הזה מהמערך

      <div *ngFor="let item of itemArr; let i = index" ">{{item.value}}</div>
      

      מערכת שעות עבודה, https://timess.co.il/
      בלוג הקוד שלי: https://yossef7525.github.io/

      yyyY תגובה 1 תגובה אחרונה
      2
      • yyyY מנותק
        yyyY מנותק
        yyy
        השיב לkatz ב נערך לאחרונה על ידי
        #3

        @katz
        אני יודע איך מסירים ממערך, אני רוצה שיתרענן מידי.
        מה שכתבת לגבי האינדקס, לא הבנתי בדיוק מה כוונתך (אני יודע שאפשר להוסיף אינדקס), אשמח אם תרחיב.

        katzK תגובה 1 תגובה אחרונה
        0
        • katzK מנותק
          katzK מנותק
          katz
          השיב לyyy ב נערך לאחרונה על ידי
          #4

          @yyy אמר בריענון מסך באנגולר לאחר שינוי:

          אני רוצה שיתרענן מידי.

          לא הבנתי, הרי באנגולר השיוניים משתקפים בתצוגה מיידית.

          מה שכתבת לגבי האינדקס, לא הבנתי בדיוק מה כוונתך (אני יודע שאפשר להוסיף אינדקס), אשמח אם תרחיב.

          פשוט מאוד התכוונתי שבכדי להשתמש עם splice צריך לציין איזה איבר במערך למחוק, כדי לקבל את האינדקס של האיבר אמרתי לך להוסיף אינדקס.

          מערכת שעות עבודה, https://timess.co.il/
          בלוג הקוד שלי: https://yossef7525.github.io/

          תגובה 1 תגובה אחרונה
          1
          • רפאלר מנותק
            רפאלר מנותק
            רפאל
            השיב לyyy ב נערך לאחרונה על ידי רפאל
            #5

            @yyy השאלה שלך איננה ברורה, בהנחה וכפי שטענת שאתה יודע למחוק איבר ממערך (ולמרות זאת כתבת את השאלה), בנוסף להנחה שמחיקת האיבר מהמערך מתבצעת בקומפוננטת האב, אני חושד שההתנהגות המתוארת בשאלה היא תוצאה של הגדרת הChangeDetectionStrategy לOnPush אם כי בהתחשב בתיאור הלא ממצה של הבעיה, אין זה אלא ניחוש בעלמא.
            אני ממליץ לך לשתף קוד מינימלי שמשחזר את הבעיה באמצעות Stackblitz וכדו'.

            תגובה 1 תגובה אחרונה
            2
            • י מנותק
              י מנותק
              יוסף בן שמעון
              השיב לyyy ב נערך לאחרונה על ידי
              #6

              @yyy אני חושב שהבנתי את הבעיה, ושהפיתרון של @KATZ נכון,
              תראה כאן איך זה מתרענן מיד
              https://stackblitz.com/edit/angular-59xiju?file=src%2Fapp%2Fapp.component.html

              תגובה 1 תגובה אחרונה
              2
              • dovidD dovid העביר נושא זה מ-תכנות ב-

              בא תתחבר לדף היומי!
              • התחברות

              • אין לך חשבון עדיין? הרשמה

              • התחברו או הירשמו כדי לחפש.
              • פוסט ראשון
                פוסט אחרון
              0
              • דף הבית
              • קטגוריות
              • פוסטים אחרונים
              • משתמשים
              • חיפוש
              • חוקי הפורום