对象文字的属性'孩子'暗中有一个“任何[]'类型

时间:2017-08-18 13:50:58

标签: arrays typescript

如何将myOtherKey属性设置为any

打字稿错误..

Object literal's property 'children' implicitly has an 'any[]' type

对象初始化..

let myObject = {
  myKey: 'someValue',
  myOtherKey: []
};

3 个答案:

答案 0 :(得分:14)

你可以做的就是断言你应该使用该数组的预期类型,以覆盖编译器对任何类型的解析。

let myObject = {
  myKey: 'someValue',
  myOtherKey: [] as string[]
};

答案 1 :(得分:2)

你也可以通过设置告诉 Typescript 你不关心隐式任何:

 "noImplicitAny": false,

在你的 tsconfig.json 中。

如果你不想为整个项目设置它,你也可以在'myOtherKey'行之前添加这一行:

// @ts-ignore

通常 toskv 答案是可行的方法,但有时将所有内容解释为打字稿只是一种开销(例如,当您模拟某个对象并且希望将空数组保存在某些属性上时)。

答案 2 :(得分:1)

您可以将对象声明为any例如

let myObject:any = {
  myKey: 'someValue',
  myOtherKey: []
};