如何在TypeScript中知道接口是否为null或未实现?

时间:2018-12-03 21:24:13

标签: typescript interface null

我有以下代码:

 @HostListener('drop', ['$event'])
  onDrop(event: DragEvent): void {
    event.preventDefault();
    const textData: string = event.dataTransfer.getData('text').replace(/\D/g, '');
    this.inputElement.focus();
    document.execCommand('insertText', false, textData);
  }
}

TSLint告诉我,在对event.dataTransfer的调用中,event可能为null。好吧,很公平。

如何确定event在代码中是否为空,以便对代码进行保护?

更具体地说,如何判断接口是否为空或未实现?

更新

以下是短绒棉告诉我的确切照片:

enter image description here

1 个答案:

答案 0 :(得分:2)

这是TS编译错误,dataTransfer可能是null,所以getData()可能是错误。您应该先检查dataTransfer是否不为空:

if (event.dataTransfer) {
    event.dataTransfer.getData('text').replace(/\D/g, '');
}