मेरे पास पसंदीदास्टोर है और मैं mobx के लिए नया हूं और मैं सरणी को bookmarkapi से petList सरणी में सेट करना चाहता हूं, लेकिन मुझे एक त्रुटि मिल रही है।

त्रुटि;

[Unhandled promise rejection: TypeError: undefined is not an object (evaluating '_this2.userId')]

कोड;

import { observable, computed, action, makeObservable, configure } from "mobx";
import { bookmarkApi, petApi } from '../../constants/apiURL';
import AsyncStorage from '@react-native-async-storage/async-storage';

configure({
    enforceActions: "never",
})

class Favorites {
    userId = 0;
    petList = [];

    constructor() {
        makeObservable(this, {
            userId: observable,
            petList: observable,
            bookMarkList: action
        })
    }

    bookMarkList = async () => {
        const value = await AsyncStorage.getItem('userId')
        if (value != null) {
            this.userId = value;
            console.log(this.userId);
        }

        bookmarkApi.get('/').then(function (responseJson) {
            this.petList = responseJson.data.filter(data => data.userId == this.userId)
        })
    }
}

export const favoriteStore = new Favorites();
0
yasin 23 नवम्बर 2021, 03:38

1 उत्तर

सबसे बढ़िया उत्तर

कॉलबैक फ़ंक्शन संदर्भ खो गया है, बस bookmarkApi.get कॉलबैक के लिए तीर फ़ंक्शन का उपयोग करें।

0
Danila 23 नवम्बर 2021, 12:25