angular - NodeListOf 类型上不存在 forEach 属性

标签 angular typescript

Angular 2.4.4、TypeScript 2.1.5、PhpStorm 2017.2.1 我写这段代码:

const list = document.querySelectorAll('path.frame-zone');
list.forEach(() => {

但是第二行带有红线下划线并且 TsLint 报告“类型 NodeListOf 上不存在 forEach 属性” 但是当我 ctrl+click forEach它让我到lib.es6.d.ts其中 forEach声明为 interface NodeListOf<TNode extends Node>

为什么它不让我使用它?怎么了?

最佳答案

您需要将其转换为数组:

const frameZones = Array.from(document.querySelectorAll('path.frame-zone'));
frameZones.forEach((...) => {});

关于angular - NodeListOf 类型上不存在 forEach 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46349147/

相关文章:

html - bootstrap div 不与 Canvas 对齐

angular - 如何逐步使现有的 Angular 应用程序 "fully strict"?

reactjs - 在点击处理程序中获取属性值?

typescript - 如何使用 "p-waterfall"TypeScript 类型

javascript - Angular2 Typescript如何从对象内部检索数组

javascript - linqts - 按多个属性分组

angular - 如何在 Angular 6 中组合两个相同类型的可观察数组?

c# - MVC、Angular 8 和 signalR 随机行为,有时无法连接到集线器,如何解决?

node.js - ng new my-app 意外 token =

Angular 4 : setting the local variable # dynamically