我解析一个html文档
const document = new DOMParser().parseFromString(xmlText, "text/xml");
我在该文档中寻找svg标记
const svgRoot = svgDocument.querySelector("svg")
对于每个孩子,我想使用各种缩小的svg元素的类型,但还没有找到一种比使用断言更好的方法?
Array.from(svgRoot.children).forEach(svgElement => {
convertElement(svgElement)
});
convertElement(element: Element) {
switch (element.tagName) { // tag names map to converter classes
case "line":
// validate line
// ta pixlar
return convertLine(element as SVGLineElement)
default:
throw Error(`Unknown element: ${element.tagName}`)
}
}
如何在不使用断言的情况下将元素视为SVGLineElement?