我从update
导入了@types/immutability-helper
。现在我想将项目推送到React的组件状态中的数组。
index.d.ts
文件中的语法说:
interface UpdateFunction {
(value: any[], spec: UpdateArraySpec): any[];
(value: {}, spec: UpdateSpec): any;
extend: (commandName: string, handler: CommandHandler) => any;
}
和UpdateArraySpec
是
interface UpdateArraySpec extends UpdateSpecCommand {
$push?: any[];
$unshift?: any[];
$splice?: any[][];
[customCommand: string]: any;
}
这是否意味着我必须写2次更新?:
this.setState(update(this.state, update(this.state.Markers, { $push: [info] })));
或者什么?
答案 0 :(得分:2)
这是对我有用的语法:
this.setState(update(this.state, { Markers: { $push: [info] } }));
这在typescript定义文件中并不明显。但是the docs说了类似的东西。