如何将对象文字分配给具有私有属性的变量

时间:2015-12-30 05:17:26

标签: typescript

考虑以下课程:

class MyClass
{
  public prop1: string;
  private prop2: string;
}

如何使用TypeScript中的对象文字分配给该类的实例?

var x: MyClass = {
  prop1: "a",
  prop2: "b" // compiler complains that prop2 is public not private
};

2 个答案:

答案 0 :(得分:2)

私人财产旨在禁止此类事情。最好的办法是使用类型断言any

var x: MyClass = <any>{
  prop1: "a",
  prop2: "b"
};

答案 1 :(得分:1)

您现在可以使用对象传播来做到这一点:

var x: MyClass = {
  prop1: "a",
  ...{} as any
};