考慮這個打字稿類(但我不認爲打字稿是相關的問題,不是模糊的根本defineProperty
電話等):如何獲得淘汰賽以更新定義的屬性?
class Model
{
public TeamId: number;
constructor()
{
var self = this;
ko.track(this);
ko.getObservable(this, "TeamId").subscribe(function (newValue)
{
var o = ko.getObservable(self, "link");
o.valueHasMutated();
});
}
get link(): string
{
return `/blah/blah/team/${this.TeamId}`;
}
}
請注意,我使用映射插件。
link
屬性使用當前的TeamId
爲該團隊建立合適的鏈接。我的問題是:如何告訴淘汰賽,當TeamId
屬性發生變化時,link
屬性也會發生變化?我認爲subscribe
回調會做到這一點,但getObservable
返回null。我想這是因爲它不適用於用defineProperty
定義的屬性。但現在我卡住了,因爲我想使用這個語法,但不能使它工作。
根據我目前的解決方法,我認爲這會工作,但不得不做出這樣一個後盾功能它是一種缺憾爲每一個屬性。這種做法大部分都有*屬性的目的。 –
那裏沒有參數。您可能想要打開另一個ES5特定的問題,以查看是否有更好的方法。 –