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

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

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

עדכון מידע במספר פריטים באובייקט

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

    מנסה לעדכן מלאי לאחר רכישה, קיבלתי את כל המוצרים שנרכשו, באובייקט, אני רוצה שיעבור בין כל הפריטים ויעדכן בכל אחד בשדה של המלאי -1 אני מבין שזה אמור לולאה for' אבל אני עוד לא הבנתי טוב את בניית הלולאות כנראה.

    
    $w.onReady(function () {
    
    	var id = $w("#dynamicDataset").getCurrentItem()._id;
    	wixData.queryReferenced("hazmanot", id, "muzarim")
    		.then((results) => {
    			console.log(results);
    			if (results.items.length > 0) {
    				var firstItem = results.items
    				var myObj, i;
    				myObj = firstItem
    
    				for (i in myObj.muzarim) {
    					var id2 = myObj.muzarim
    					// console.log(id2);
    					wixData.get("muzarim", id2)
    						.then((item) => {
    							item.nimcar = Number(item.nimcar - 1)
    							wixData.update("muzarim", item)
    								.catch((err) => {
    									let errorMsg = err;
    								})
    						});
    				}
    			} else {
    
    			}
    		});
    });
    
    

    https://www.av-digital.co.il/

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

      זה הקוד בצורה מסודרת.

      
      wixData.queryReferenced("hazmanot", id, "muzarim")
          .then((results) => {
              if (results.items.length > 0) {
                  let firstItem = results.items;
                  console.log(firstItem);
                  mlay(firstItem)
              } else {
              }
          })
          .catch((err) => {
              let errorMsg = err;
          });
      
      export function mlay(firstItem) {
          var i;
          for (i in firstItem.nimcar) {
              var id = firstItem._id
              wixData.get("muzarim", id)
                  .then((item) => {
                      item.nimcar = Number(item.nimcar - 1)
                      wixData.update("muzarim", item);
                  })
                  .catch((err) => {
                      let errorMsg = err;
                  });
          }
      }
      

      הבעיה היא פה
      for (i in firstItem.nimcar)

      אתה לא עובר על כל האלמנטים בצורה נכונה.
      firstItem מערך ותחפש בגוגל.

      https://www.google.com/search?q=foreach+array+js

      כלומר מעבר על כל המערך בשפת JS.

      בהצלחה.

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

        תודה @magicode אין מילים!
        באתר החי, הוא לא מוריד לי בדיוק לפי הכמות, יתכן וזה רץ מהר מידי ומבצע כמה פעמים?

        `
        export function mlay(id) {
            wixData.queryReferenced("hazmanot", id, "muzarim")
                .then((results) => {
                    results.items.forEach(item => {
                        let id2 = item.muzarim,
                            camut = item.camut;
                        console.log(camut);
                        wixData.get("muzarim", id2)
                            .then((item1) => {
                                item1.nimcar = item1.nimcar - camut
                                wixData.update("muzarim", item1)
                                    .catch((err) => {
                                        let errorMsg = err;
                                    })
                            })
                    })
                });
        }
        

        https://www.av-digital.co.il/

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

          אם הוא מוריד פחות ממה שצריך זה בגלל שאתה מוריד במקביל. בגלל שזה רץ במקביל.

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

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

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

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