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

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

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

שינוי רכיב אחד לאחר שינוי ברכיב אחר - vue

מתוזמן נעוץ נעול הועבר תכנות
7 פוסטים 2 כותבים 163 צפיות
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • chagoldC מנותק
    chagoldC מנותק
    chagold
    כתב ב נערך לאחרונה על ידי
    #1

    לדוגמא כאן.
    כשעושים שינוי ב-int_to_filter הוא מרענן את הנתונים כיון שהוא מוזכר בתוך הפונקצייה filtered_databusiness.

    הנקודה, שאני צריך שגם כאשר יבוצע שינוי ב=int2_to_filter הוא יהיה טריגר לרענון של הנתונים (לא רק של התצוגה אלא גם של כל הנתונים המחושבים).

    ניסיתי לעבוד עם אופציות מובנות של הVUE כמו לדוגמא להכניס פונקציה בנקודת זמן updated, אבל הוא נכנס ללולאה אין סופית של עדכונים.

    ראיתי כאן, אבל זה לא עוזר לי. אולי כיון ששם הוא רק מרענן את התצוגה ואני צריך סינון של כל הנתונים.

    אשמח לרעיונות נוספים....

    תודה

    תגובה 1 תגובה אחרונה
    0
    • yossizY מחובר
      yossizY מחובר
      yossiz
      כתב ב נערך לאחרונה על ידי yossiz
      #2

      @chagold אולי זה יעזור לך:
      https://vuejs.org/v2/guide/computed.html#Computed-Caching-vs-Methods

      📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

      תגובה 1 תגובה אחרונה
      1
      • chagoldC מנותק
        chagoldC מנותק
        chagold
        כתב ב נערך לאחרונה על ידי chagold
        #3

        תאורטית זה מצוין. אבל כשאני מכניס את הפונקציה ל - methods אני לא מצליח לגשת אליו. (אפשר לגשת אליו כפונקציה בעת ארוע (כמו v-on:click) אבל לא לגשת אליו לקבלת נתונים).

        תגובה 1 תגובה אחרונה
        0
        • yossizY מחובר
          yossizY מחובר
          yossiz
          כתב ב נערך לאחרונה על ידי yossiz
          #4

          @chagold כדאי לקרוא תשובה זו: https://stackoverflow.com/a/51699388
          הוא מסביר את מנגנון זיהוי התלויות של נתונים מחושבים.

          לכאורה יש 2 פתרונות,

          • או לגרום ל-int2_to_filter להיות מזוהה כתלויה על ידי גישה אליו מתוך פונקציית filtered_databusiness.
          • או להשתמש ב-watch

          DISCLAIMER: אני לא מכיר את Vue

          📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

          תגובה 1 תגובה אחרונה
          0
          • chagoldC מנותק
            chagoldC מנותק
            chagold
            כתב ב נערך לאחרונה על ידי chagold
            #5

            @yossiz אמר בשינוי רכיב אחד לאחר שינוי ברכיב אחר - vue:

            @chagold כדאי לקרוא תשובה זו: https://stackoverflow.com/a/51699388
            הוא מסביר את מנגנון זיהוי התלויות של נתונים מחושבים.

            לכאורה יש 2 פתרונות,

            • או לגרום ל-int2_to_filter להיות מזוהה כתלויה על ידי גישה אליו מתוך פונקציית filtered_databusiness.

            יש כבר גישה משם. ואעפ"כ משום מה הוא בכלל לא ניגש לfiltered_databusiness כשיש ריענון של int2_to_filter.

            • או להשתמש ב-watch

            לא הבנתי איך מממשים אותו.

            לא אכפת לי ג"כ פתרון מלוכלך שupdate של מתודה מסוימת שיהיה טריגר לריענון. (מה שכתבתי מקודם שיצר לולאה אינסופית זה כשהיה ריענון של כל הקומפוננטה)

            yossizY תגובה 1 תגובה אחרונה
            0
            • yossizY מחובר
              yossizY מחובר
              yossiz
              השיב לchagold ב נערך לאחרונה על ידי yossiz
              #6

              @chagold אמר בשינוי רכיב אחד לאחר שינוי ברכיב אחר - vue:

              יש כבר גישה משם. ואעפ"כ משום מה הוא בכלל לא ניגש לfiltered_databusiness כשיש ריענון של int2_to_filter.

              גם לפי התיעוד וגם מניסויים שלי זה אמור לרענן את השדות המחושבים בכל פעם שיש שינוי למאפיין שאתה ניגש אליו בפונקציה של החישוב. (תוודא שאתה ניגש אליו בכל פעם שהפונקציה נקראת, ולא רק בתנאי מסויים, וגם ש-int2_to_filter הוא בדאטה ולא משתנה חיצוני)

              לא הבנתי איך מממשים אותו.

              פשוט מוסיפים עוד קטע לדאטה:

              watch: {
                 int2_to_filter: function (oldValue, newValue) {
                     this.items = getItems();
                 }
              }
              

              לא אכפת לי ג"כ פתרון מלוכלך

              זו סיטואציה נפוצה ואין צורך למשהו מלוכלך כאשר יש תמיכה מפורשת בסיטואציות כאלו

              📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

              תגובה 1 תגובה אחרונה
              3
              • chagoldC מנותק
                chagoldC מנותק
                chagold
                כתב ב נערך לאחרונה על ידי chagold
                #7

                תודות ל@yossiz שהוסיף לעזור לי באישי

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

                לכן בסיטואציה הספציפית לא הכרזתי על int2_to_filter לפני השימוש. כשזה תוקן הכל הסתדר.

                מקור
                @yossiz תודה רבה!!

                תגובה 1 תגובה אחרונה
                2

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

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

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