尝试使用<form>
和Babel迭代for..of
元素时出现以下错误:
测试[Symbol.iterator]不是一个函数。 (在 'testSymbol.iterator','test [Symbol.iterator]'未定义)
我在页面上有babel-polyfill
。迭代NodeList
,Array
和其他元素很好,问题似乎是<form>
元素。
以下代码在Chrome v49中正常运行:
for(const x of test) {
console.log(x);
}
<form id="test">
<input>
<input>
<input>
</form>
但是,在需要polyfilled的浏览器中,我收到错误消息。这是一个jsFiddle,它可以重现这个问题。
哪种实施方法正确?这是 babel-polyfill 中的错误吗?
答案 0 :(得分:0)
我和你有同样的问题。
最后,我这样解决:
const List= document.querySelectorAll('.my-class');
for(let i=0,i<List.length,i++){
console.log(List.item(i))
}
出错的代码:
const List= document.querySelectorAll('.my-class');
for(let i of List)
{
console.log(i);
}