gpt4 book ai didi

angular - 如何在 typescript 和 Angular 中定义静态常量

转载 作者:太空狗 更新时间:2023-10-29 17:30:53 25 4
gpt4 key购买 nike

我有一堆与业务相关的常量,我必须将它们存储在 Angular 中。如下所示

STUDENT_NAMES= ["JOHN","BOB","NICK"]
TEACHER_NAME = ["HARRY","CHRIS"]
SCHOOL_CODE = [100,102,107];

我有很多,它们都是静态的..我的大部分服务类都需要它们。存放它们的最佳位置是什么?我应该创建一个接口(interface)并让我的服务类继承它们吗?在java中,我们定义了一类public static final常量,其他类使用它们。像这样, typescript 方式是什么?

最佳答案

为常量定义一个抽象类:

export abstract class Constants {
static readonly STUDENT_NAMES = ["JOHN", "BOB", "NICK"];
static readonly TEACHER_NAME = ["HARRY", "CHRIS"];
static readonly SCHOOL_CODE = [100, 102, 107];
}

(编辑:类型 string[]number[] 由 TS 推断)

然后在需要时使用 import { Constants } from '...'; 包含此类,并将其值与 const names: string[] = Constants.STUDENT_NAMES;

关于命名,我同意@AdrianBrand 更喜欢像studentNamesteacherNamesschoolCodes 这样的名称。

编辑: TypeScript 3.4 引入了所谓的 const assertions ,这也可能适合:

export const constants = {
studentNames: ["JOHN", "BOB", "NICK"],
...
} as const;

关于angular - 如何在 typescript 和 Angular 中定义静态常量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53163595/

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