2017-01-23 120 views
-1

如何在JavaScript或TypeScript中爲setter項目設置公共屬性?TypeScript Setter的公共屬性

  • 也許其他的想法來實現這樣的:
var eventhandler = function() {blah...} 

class someClass { 
    public set foo(value: any) { 
     ... 
    } 
} 

var bar: someClass; 

bar.foo.onchange = eventhandler; 

bar.foo.someProp = prop1; 
+1

嘿阿里,歡迎來到SO。請花一些時間閱讀如何問一個好的問題指南。 :) http://stackoverflow.com/help/how-to-ask – toskv

+0

你設置的是設置'foo',但是'bar.foo.someProp' **獲取**'foo'。 – 2017-01-23 17:52:21

回答

0

您可以在這樣一個類創建setter方法:

class A { 
    public aProp: string; 

    public set propSetter(value: string) { 
     this.aProp = value; 
    } 
} 

new A().propSetter = 'abc'; 

的二傳手但是必須有一個不同於該屬性的名稱,因爲它們最終都會作爲屬性類的原型。

你可以看到一個完整的工作示例here