我想制作一个Map,其中每个成员包含一个字符串array.但是我如何初始化和输入它(在一条语句中)?

(天真地)我试过:

  private _gridOptions:Map<string, Array<string>> = {"1": ["test"]};

我得到:

Module build failed: Error: /Users/*****/Work/dashboard/src/app/core/pg.service.ts (8,5): Type '{ "1": string[]; }' is not assignable to type 'Map<string, string[]>'.

推荐答案

Mozilla's Map documentation次,您可以按如下方式初始化:

private _gridOptions:Map<string, Array<string>> = 
    new Map([
        ["1", ["test"]],
        ["2", ["test2"]]
    ]);

Typescript相关问答推荐

排序更改数组类型

在Switch陈述中输入保护类

根据另一个成员推断类成员的类型

VS代码1.88.0中未出现自动导入建议

用泛型类型覆盖父类函数导致类型y中的Property x不能赋给基类型Parent中的相同属性."'''''' "

如何修复正在处理类型但与函数一起使用时不处理的类型脚本类型

键集分页顺序/时间戳上的筛选器,精度不相同

接口中函数的条件参数

部分更新类型的类型相等

有什么方法可以类型安全地包装import()函数吗?

对于始终仅在不是对象属性时才抛出的函数,返回Never

是否有可能避免此泛型函数体中的类型断言?

有没有可能创建一种类型,强制在TypeScrip中返回`tyPeof`语句?

Typescript 中相同类型的不同结果

将对象的属性转换为正确类型和位置的函数参数

如何创建一个将嵌套类属性的点表示法生成为字符串文字的类型?

typescript如何从映射类型推断

如何提取具有索引签名的类型中定义的键

如何在TypeScript中声明逆变函数成员?

数据库中的表请求返回如下日期:2023-07-20T21:39:00.000Z 我需要将此数据格式化为 dd/MM/yyyy HH:mm