typescript - 启用标志 --strictNullChecks 时,null 不可分配给 void
问题描述
根据 TypeScript 文档:
但是,当使用--strictNullChecks标志时,null和undefined只能分配给void和它们各自的类型。这有助于避免许多常见错误。如果你想传入一个字符串或者 null 或 undefined,你可以使用联合类型string | 空 | 未定义。再一次,稍后将详细介绍联合类型。
但是,当我尝试以下代码片段时:
// This worked correctly
let voidIsUndefined: void = undefined;
// While following code thrown a compilation error "Type 'null' is not assignable to type 'void'."
let voidIsNull: void = null;
它没有按预期完全工作。
根据文档,我应该能够将null分配给 void 类型。有人可以解决这个疑问吗?
解决方案
TypeScript 文档具有误导性,您感到困惑是正确的。这里有一个问题:https ://github.com/microsoft/TypeScript-Handbook/issues/468
推荐阅读
- ibm-cloud - 从 IBM Watson Assistant (Conversation) 导出用户对话数据?
- powershell - 如何在 PowerShell 中删除换行符 CRLF?
- amazon-s3 - 如何将 Instagram 获取图像上传到 AWS S3?
- caching - JxBrowser 不刷新
- php - 使用数据库查找基于输入更新表单类
- linux - 为屏幕外渲染构建最小的 mesa/xorg
- c# - Asp.net MVC 将数据发布到控制器而不刷新页面
- java - 我们可以为多个数据库使用相同的休眠注释 pojo 类吗?
- c# - wpf Richtextbox中的突出显示/着色字符
- salt-stack - Masterless Windows Salt minion - 保存状态文件的位置