簡體   English   中英

沒有機會使Mobx可以觀察到強類型對象

[英]No chance to make an strongly typed object observable by mobx

我使用mobx庫。 它非常適合ReactJS。 我有一個像這樣的可觀察數組:

@observable items = [];

當我以這種方式添加對象時,我沒有問題,並且給定的對象將按預期可觀察到。

let x = {
Title: "sample title"
}

items.push(x);

但是當我定義一個強類型的對象時(使用打字稿)

export class SampleObject {
    Title: string;
    constructor(title: string) {
        this.Title = title;
    }   
}

並以這種方式推入新物體,這將是不可觀察的

items.push(new SampleObject("Sample Title"));

我怎么解決這個問題 !?

x和y有什么區別?

var x = {
Title: "sample"
}

var y = new SampleObject("sample");

MobX在將普通對象分配給例如數組時,僅將普通對象自動轉換為可觀察對象,因為對於類實例,否則它可能會干擾該類的內部。

因此,在您的課堂上,只需將您的字段(標題)也標記為@observable ,就可以了。 參見: https : //mobxjs.github.io/mobx/refguide/object.html ,第二項

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM