web-dev-qa-db-fra.com

Pas capable d'importer décorer de Mobx

Tentative d'erreur d'importation: "Décorer" n'est pas exportée de "Mobx". Ma version MOBX est 6.0, j'ai essayé de modifier le colis de Mobx à Mobx-React, Mobx-React-Lite, Mobx-Décorer. Mais ne pouvait toujours pas le résoudre.

Merci Entrez la description de l'image ici à l'avance

5
Rupa_Sri

L'API decorate a été supprimé dans Mobx 6 et doit être remplacé par makeObservable dans le constructeur de la classe ciblée. Il accepte les mêmes arguments.

Exemple:

import { makeObservable, observable, computed, action } from "mobx"

class Doubler {
    value

    constructor(value) {
        makeObservable(this, {
            value: observable,
            double: computed,
            increment: action
        })
        this.value = value
    }

    get double() {
        return this.value * 2
    }

    increment() {
        this.value++
    }
}

Il y a aussi une nouvelle chose makeAutoObservable, vous n'avez même pas besoin d'utiliser des décorateurs avec celui-ci:

import { makeAutoObservable } from "mobx"

class Timer {
    // You don't even need to use decorators anymore
    secondsPassed = 0

    constructor() {
        // Call it here
        makeAutoObservable(this)
    }

    increaseTimer() {
        this.secondsPassed += 1
    }
}

Plus d'infos ici: https://mobx.js.org/react-integration.html

5
Danila