小编Juk*_*ris的帖子

如何在 Typescript 中扩展匿名类型

当使用匿名类型链接功能时,typescript例如如下所示:

  let array = [{ seed: 2 }, { seed: 3 }];
  array
    .map(i => ({ seed: i.seed, square: i.seed * i.seed }))
    .forEach(i => console.log(`square for ${i.seed} is ${i.square}`));
Run Code Online (Sandbox Code Playgroud)

我需要为地图函数定义新的匿名类型。如果我有多个步骤都生成新属性,那么我最终会编写大量定义代码来继承所有属性。我可以使用$.extend(或Object.assign),但这样我就会失去智能感知和强类型。

  array
    .map(i => $.extend(i, { square: i.seed * i.seed }))
    .forEach(i => console.log(`square for ${i.seed} is ${i.square}`));
Run Code Online (Sandbox Code Playgroud)

如何在保持强类型的同时扩展匿名对象而不再次定义所有属性?

intellisense strong-typing typescript

5
推荐指数
1
解决办法
1万
查看次数

标签 统计

intellisense ×1

strong-typing ×1

typescript ×1