在类型"HTMLScriptElement"上找不到带有"字符串"类型的参数的索引签名



我对HTMLScriptElement的属性类型有一个问题。

在下面的代码中,问题出现在:

script[attribute.name] = attribute。价值吗?属性。取值范围:true

TS7053:元素隐式具有'any'类型,因为'string'类型的表达式不能用于索引'HTMLScriptElement'类型。在类型'HTMLScriptElement'上找不到带有'string'类型参数的索引签名。"
const generateFromSource = (codeString: string) => {
let script = document.createElement('script')
let template = document.createElement('div')
template.innerHTML = codeString
const element = template.getElementsByTagName('script')[0]
for (let attribute of element.attributes) {
if (attribute) {
script[attribute.name] = attribute.value ? attribute.value : true
}
}
document.head.appendChild(script)
}

请给我一些建议。谢谢你!

索引脚本local,以获得特定的属性很难在JS中工作:script.getAttribute(attributeName)会的。设置特殊脚本的属性值可以这样处理:

script.setAttribute(attribute.name, attribute.value);

相关内容

  • 没有找到相关文章

最新更新