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

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

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

vueX, ה-store לא מתעדכן בנתונים.

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

    כהמשך למטרה שלי באשכול הזה (שנפתרה תודות ל @yossiz )

    יצרתי מוטציה (שניגשת לשרת לקבל פרמטרים ומזינה אותם בstate).

    כשאני ניגש בשורה הבאה לstate או הgetters, אז הפרמטרים עדיין לא מופיעים ואני מקבל תוצאה כזו -
    1794681e-5d31-4a98-a9a1-dad035811fb7-image.png

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

    זה הקוד

    import { store } from '@/store/store'
    
    async function myDisplay() {
    
    	await store.commit('get_data_project');
    
    	const user = await store.getters.data_project
    	console.log(user)
    }
    myDisplay();
    
    yossizY תגובה 1 תגובה אחרונה
    0
    • yossizY מנותק
      yossizY מנותק
      yossiz
      השיב לchagold ב נערך לאחרונה על ידי
      #2

      @chagold אמר בvueX, ה-store לא מתעדכן בנתונים.:

      יצרתי מוטציה (שניגשת לשרת

      מוטציות אמורים להיות סינכרוניים. לתהליך אסינכרוני תשתמש באקשין.
      https://vuex.vuejs.org/guide/mutations.html#mutations-must-be-synchronous

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

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

        @yossiz זה עדיין לא עוזר.
        לאחר בדיקה זה בגלל שאני משתמש באקשין בfetch וזה סינכרוני.

        כנראה אני צריך להכניס את הfetch בתוך פונקציית async, רק שזה הורס את ההתייחסות בthis ל-store (וזה שוב פלסטלינה).
        הכיוון הזה נכון או שאני צריך לעשות משהו פשוט יותר?

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

          כך עלתה בידי

          באקשין:

          const actions = {
          
             get_data_project(state){
          		
               return fetch(this.getters.domainToFetch+'/index.php',{credentials: 'include'})
                      .then(response => response.json())
          	    .then(
          		data_project => {
                            return this.state.typesprojects.data_project = data_project;
          	    })
              }
          }
          

          והקריאה

          import { store } from '@/store/store'
          
          store.dispatch('get_data_project')
            .then(
               data_project => {
          	console.log(data_project.name_project)
             });
          
          תגובה 1 תגובה אחרונה
          0

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

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

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