openlang

Инициализация TypeScript Map со значениями в виде массивов строк

Создаю Map, в котором каждая запись содержит массив строк. Как одновременно задать его тип и инициализировать одним выражением?

Моя (наивная) попытка выглядела так:

    private _rowEntries:Map<string, Array<string>> = {"3": ["sampleA"]};

и дала следующий результат:

  Module build failed: Error: /Users/arden/Work/controlpanel/src/app/core/rows.service.ts (12,7): Type '{ "3": string[]; }' is not assignable to type 'Map<string, string[]>'.
Переведено с английскогоПоказать оригинал

Разговор продолжается 2

Следуя доводам
  1. Ссылка на ответ
      entryTable: Map<string, string[]> = new Map();

    Для добавления записей в Map:

      entryTable.set("m", ["n", "p"]);

    Для чтения записей из Map:

      entryTable.get(entryKey);// "m" in above case

    Либо инициализируйте сразу

      entryTable: Map<string, string[]> = new Map([['m', ['n', 'p']]]);
    Переведено с английскогоПоказать оригинал

Другие стороны того же вопроса

  1. Контракт вызываемой функции в Typescript

    Почему Typescript принимает определение моей функции, хотя оно отличается от сигнатуры интерфейса, но сообщает о проблеме, ко…

    Ответы 2Последняя активность typescript
  2. Ошибка преобразования типа address в uint256 в Solidity

    Я создал массив структур и попытался получить из него значения каждого аккаунта. Но передача переменной address, содержащей m…

    Ответы 3Последняя активность solidity
  3. List<Int> только для чтения - это снимок?

    List<Int> всего лишь представление только для чтения, а не снимок. Он сообщает потребителю, какие операции доступны через эту…

    Ответы 4Последняя активность kotlin