在 Typescript 中,如何使用扩展语法为 querySelectorAll 设置类型

In Typescript how can I set types for querySelectorAll with the spread syntax

我有这个代码。

const elements = [...document.querySelectorAll('.someClass')]

组合:

我不知道如何向这一行添加 Typescript 类型。

我从控制台收到错误消息:

TS2548: Type 'NodeListOf<Element>' is not an array type or does not have a '[Symbol.iterator]()' method that returns an iterator.

当您以 es5 为目标时,它不起作用,因为 TypeScript 不支持 Symbol.iterator

的填充/多文件归档

如果您定位 es6,它将起作用。

或者您可以使用 Array.from 使用 lib 选项:

const elements = [...Array.from(document.querySelectorAll('.someClass'))]

或者更简单地说:

const elements = Array.from(document.querySelectorAll('.someClass'))