我有一个要用来管理复选框的 TypeScript 类。它看起来像这样:
export class TriStateCheckboxManager {
constructor(public checkBox: HTMLInputElement) {
if (checkBox.type != "checkbox") {
// What now?
}
}
}
如果复选框的类型不等于checkbox
.
我有一个要用来管理复选框的 TypeScript 类。它看起来像这样:
export class TriStateCheckboxManager {
constructor(public checkBox: HTMLInputElement) {
if (checkBox.type != "checkbox") {
// What now?
}
}
}
如果复选框的类型不等于checkbox
.
因为 TypeScript 是 JavaScript 的超集,它支持所有内置的 JavaScript 函数、类型、对象、关键字等。您正在寻找的是throw
关键字,它将引发所需的异常。
到目前为止,您的代码很好,所以下面的代码可以完成这项工作。
export class TriStateCheckboxManager {
constructor(public checkBox: HTMLInputElement) {
if (checkBox.type !== "checkbox") {
// checkBox doesn't meet the reqruirements,
// so raise an error. Optionally, you could
// log a message, warning or whatever you want
// to the console.
console.warn("checkBox.type doesn't match.", checkBox, this);
throw "checkBox.type doesn't match." // Throw anything you want here
}
}
}
顺便说一句:强烈建议在 JavaScript(因此是 TypeScript)中使用!==
and===
进行比较,而不是!=
and ==
。请参阅此处了解更多信息。
编辑:正如 MiMo 下面所说,你可以抛出任何你想要的类型,所以一个对象也是一个合适的候选人。
我发现如果您喜欢 JavaScript / TypeScript 错误处理,这篇文章看起来很有希望。这是用于在 JavaScript 中引发错误的MDN页面。