【前端问题精选】关于 typescript 联合类型转换
- 如何让 ts 自动知道
icon
肯定是NodeIcon
类型的呢? - 如果不行,有没有比自赋值更好的转换方式呢?
// ...public async icon(icon: string | NodeIcon) {
if (typeof icon === "string") icon = new NodeIcon(
(await dataFetch("icon/" + icon + ".tico")).split("\n").filter(l => l)
)
return this.q(({ c }) => {
const eIcon = document.createElement("canvas")
eIcon.width = icon.matrix[0].length
eIcon.height = icon.matrix.length
c.appendChild(eIcon);
icon.paint(eIcon.getContext("2d"))
})
}
// ...
回答:
var nIcon = (typeof icon === "string") ? new NodeIcon(...) : icon
这样应该知道nIcon的类型了吧
以上是 【前端问题精选】关于 typescript 联合类型转换 的全部内容, 来源链接: utcz.com/a/132779.html