Angular Typescript Generic Class不会抛出错误

时间:2018-06-06 08:17:17

标签: angular typescript

我尝试使用适用于一组类型的泛型类(使用接口)。当我将我的属性传递给组件时,如果不遵守该类型,我需要抛出错误。

以下是示例:https://codesandbox.io/s/m7ryzwyrj

我将标题定义为字符串,但是当我将标题作为数组或数字或其他方式传递时,不会抛出任何错误。

  

[title] =“{title:[]}”< ---无错误类型(但必须是字符串)

1 个答案:

答案 0 :(得分:-2)

如果我的请求正确,你应该试试这个:

constructor() {
  console.log("TITLE", this.title);
  if (typeof this.title !== 'string') {
    throw new Error('Generic type: Title must be a string');
  }
}

如果title属性不是字符串,则会抛出控制台错误。那是你想要的吗?如果没有,请详细解释。

只是旁注:这是一个开发功能,因为Javascript不会输入变量。因此,您将看到抛出的错误,但它不会阻止任何内容或冻结您的应用程序。