는 (하지만 기본 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 관련 질문을 열어 더 나은 방법이 있는지 알아볼 수도 있습니다. –