gpt4 book ai didi

初始化时具有空属性的 TypeScript 类

转载 作者:行者123 更新时间:2023-12-04 16:43:10 24 4
gpt4 key购买 nike

我用 npx create-next-app --example with-typescript with-typescript-app 开始了一个带有 typescript 的新 Next.js 项目( https://github.com/zeit/next.js/tree/master/examples/with-typescript )。

当我尝试创建这样的类时:

export class Programm {
id: string;
name: string;
thumbnailUrl: string;
}

我收到语法错误:
Property 'id' has no initializer and is not definitely assigned in the constructor.ts(2564)
当我添加这样的构造函数时:
constructor(id: string, name: string, thumbnailUrl: string) {
this.id = id;
this.name = name;
this.thumbnailUrl = thumbnailUrl;
}

有用。为什么会这样,我如何创建一个对象,以便在初始化类时属性为空?

相同的代码在没有角度的构造函数的情况下工作

最佳答案

您可以使用 ? 将属性定义为可选的。修饰符:

export class Programm {
id?: string;
name?: string;
thumbnailUrl?: string;
}

现在,如果您初始化“Programm”类型的新实例,则属性将具有 undefined值(value)。

关于初始化时具有空属性的 TypeScript 类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55421543/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com