是否可以強制打字稿將方法放在實例上而不是原型上。我問這個問題是因爲我經常遇到有關原型方法會導致問題的「範圍」問題。強制打字稿將方法放在實例上而不是原型
編輯
例如從它似乎不一致的TS輸出,我保持FooAlert在FooViewModel功能,但在原型
方法openFooAlertDialogueAdd的js
var FooViewModel = (function() {
function FooViewModel (json) {
this.Foolert = ko.observable();
}
FooViewModel.prototype.openFooAlertDialogueAdd = function() {
this.FooAlert = something;
};
Ts
class FooViewModel{
FooAlert = KnockoutObservableAny
constructor(){
this.FooAlert = ko.observable();
}
openFooAlertDialogueAdd() {
this.FooAlert = something;
};
}
我做了一個編輯:) – FutuToad 2013-03-11 15:12:24
我想我必須做openFooAlertDialogueAdd = function等,因爲它給出了正確的Js輸出 – FutuToad 2013-03-11 15:15:28
將輸出JS放在一邊 - 因爲我認爲不重要 - 可以你展示了範圍問題的一個例子?即我認爲你想解決問題,我把事情做成靜態的,但我認爲可能有更好的方法。靜態解決方法是在靜態關鍵字前加上''static openFooAlertDialogueAdd()...' – Fenton 2013-03-11 16:24:14