2012-11-30 46 views
1

我必须将C#应用翻译为TypeScript。它很好,但我有一个问题:将JsObject转换为TypeScript对象

private SharpKit.JavaScript.JsObject<JsString, JsBoolean> _changedLayers = new SharpKit.JavaScript.JsObject<JsString, JsBoolean>(); 

有没有人知道如何转换?

[编辑]
好吧,我想我应该做这样的事情:

private _changedLayers: (String, Boolean) => Object; 

但现在我不知道如何初始化此对象吗?我想这一点,但没有工作...

this._changedLayers = { String: new String(), Boolean: new Boolean() }; 

回答

4
var _changedLayers : { [key: string]: bool; } = {}; 

_changedLayers['foo'] = true; // ok 
_changedLayers[1] = true; // error 
_changedLayers['bar'] = 'abc'; // error 

你也可以定义一个接口:

interface StringToBoolMap { 
    [key: string]: bool; 
} 

var _changedLayers : StringToBoolMap = {}; 
+0

由于M8!现在工作;) – Nickon

+0

相关:http://stackoverflow.com/questions/13631557/typescript-objects-as-dictionary-types-as-in-c-sharp/13631733#13631733 –