智能感知不适用于 VS 代码中 querySelectorAll 中具有类的元素

问题描述 投票:0回答:1

please check the problem here:

javscript 使用 querySelectorAll() 选择元素并添加尝试使用 . 或类添加它们时。在该时刻访问具有索引值的 node list 元素intellisense 不会 workhighlight dom 元素的方法或属性。

*我希望 dom 属性在选择节点列表元素或形成元素列表的元素时出现在javascipt中。

visual-studio-code intellisense emmet javascript-intellisense
1个回答
0
投票

让我们尝试这种方式,当使用 querySelectorAll() 选择元素,然后尝试使用点符号 (.) 访问它们或访问它们的类时,您可能不会收到有关 DOM 元素的属性或方法的 IntelliSense 建议。可能会发生这种情况,因为 querySelectorAll() 返回一个 NodeList,它不是数组,并且不会自动授予对 DOM 元素的属性和方法的访问权限。

要在使用 querySelectorAll() 选择的 DOM 元素上获得完整的 IntelliSense,您可以执行以下操作:

将 NodeList 转换为数组:

const elements = document.querySelectorAll('.your-selector');
const elementArray = Array.from(elements);

现在,您可以访问数组中的元素并获得完整的 IntelliSense:

// Access the first element in the array
const firstElement = elementArray[0];

// Now IntelliSense should suggest properties and methods of the DOM element:
firstElement.textContent = 'New text'; // Example of using a property
firstElement.classList.add('new-class'); // Example of using a method

关键是将 NodeList 转换为数组,以便您可以像访问数组元素一样访问元素,从而接收完整的 IntelliSense。如果有效的话请告诉我如何使用。

© www.soinside.com 2019 - 2024. All rights reserved.