web-dev-qa-db-ja.com

MobXから飾ることができません

インポートエラーを試みた: 'decorate'は 'mobx'からエクスポートされません。 Mobxバージョンは6.0で、MobXからMobx-React-Lite、Mobx-React-LiteからMobx-React-Liteへのパッケージを変更しようとしました.Butはまだ解決できませんでした。

ここに画像の説明を入力 前払い

5
Rupa_Sri

decorate AP​​IはMOBX 6で削除され、ターゲットクラスのコンストラクタでmakeObservableに置き換える必要があります。同じ引数を受け入れます。

例:

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++
    }
}
 _

新しいものもありますmakeAutoObservable、デコレータを使用する必要さえありません。

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
    }
}
 _

詳細はこちら: https://mobx.js.org/React-integration.html

5
Danila