Javascript 使用typescript单击时删除画布元素
我是typescript新手,我正在尝试的是从div中删除canvas元素Javascript 使用typescript单击时删除画布元素,javascript,typescript,Javascript,Typescript,我是typescript新手,我正在尝试的是从div中删除canvas元素 <div class="chart"> <canvas id="nav-chart"></canvas> </div> 尝试此操作时,它会在以下行抛出错误:const elem:HTMLElement=document.getElementById('nav-chart') TS2322: Type 'HTMLElement | null' is not assi
<div class="chart">
<canvas id="nav-chart"></canvas>
</div>
尝试此操作时,它会在以下行抛出错误:const elem:HTMLElement=document.getElementById('nav-chart')TS2322: Type 'HTMLElement | null' is not assignable to type 'HTMLElement'.
Type 'null' is not assignable to type 'HTMLElement'.
const elem: HTMLElement | null = document.getElementById('nav-chart')
在这行elem.parentElement.removeChild(elem)
我首先找到了解决方案,我们必须用
HTMLElement|null
TS2322: Type 'HTMLElement | null' is not assignable to type 'HTMLElement'.
Type 'null' is not assignable to type 'HTMLElement'.
const elem: HTMLElement | null = document.getElementById('nav-chart')
而且在条件之内
if (elem) {
elem.parentElement && elem.parentElement.removeChild(elem)
}