TypeScript:如何编辑tsconfig.json以允许向现有对象添加键?
默认情况下,我希望以下各项正常工作:TypeScript:如何编辑tsconfig.json以允许向现有对象添加键?,typescript,Typescript,默认情况下,我希望以下各项正常工作: let j = {a:1}; j.b = 2; 我知道还有一些其他的解决方法,我只是想知道我是否可以只通过编辑tsconfig.json 我知道还有一些其他的解决方法,我只是想知道我是否可以只通过编辑tsconfig.json来实现它 简短回答 没有用于此的tsconfig.json选项 更多细节 这些tsconfig.json选项都不存在: “允许在定义类型后向该类型添加其他属性” “加宽对象文字类型推断以包括在其声明后添加的键” “将对象文字类型推断
let j = {a:1};
j.b = 2;
我知道还有一些其他的解决方法,我只是想知道我是否可以只通过编辑tsconfig.json
我知道还有一些其他的解决方法,我只是想知道我是否可以只通过编辑tsconfig.json来实现它
简短回答
没有用于此的tsconfig.json
选项
更多细节
这些tsconfig.json
选项都不存在:
- “允许在定义类型后向该类型添加其他属性”
- “加宽对象文字类型推断以包括在其声明后添加的键”
- “将对象文字类型推断为
types”Record
tsconfig.json
选项:
let j = { a: 1 };
j.b = 2;
这是因为TypeScript在赋值时推断对象文字的类型。因此,您的原始代码与此等效
type J = { a: number };
let j: J = { a: 1 };
j.b = 2;
tsconfig.json
没有选项使所有对象默认为类型{[key:string]:any}
。即使是这样,TypeScript可能仍然需要知道键和值的类型
建议您键入j
,并输入以下内容:
let j: {[key: string]: number} = {a:1};
j.b = 2;
如果你不使用typescript的类型系统,它有什么意义?将变量声明为
any
,或者为其指定实际类型。Typescript将从它的初始声明中推断出类型,并且您不能真正更改该行为。它不应该是类型J={[key:string]:number}
,因为{a:number}
仅限于单个键a
?@stackoverflow新手我试图说明OP要求TypeScript使用tsconfig.json
选项允许什么。