Jan*_*ier 7 static const typescript angular
我有一堆与业务相关的常量,我必须将它们存储在Angular中。如下所示
STUDENT_NAMES= ["JOHN","BOB","NICK"]
TEACHER_NAME = ["HARRY","CHRIS"]
SCHOOL_CODE = [100,102,107];
Run Code Online (Sandbox Code Playgroud)
我有很多它们,它们是静态的。在我的大多数服务类中我都需要它们。存放它们的最佳地点是什么?我应该创建一个接口并让我的服务类继承它们吗?在java中,我们定义了一个公共静态最终常量类,其他类使用它们。像这样,打字稿方式是什么?
Adr*_*and 14
你将它们放在一个 TypeScript 文件中,并在需要的地方导入它们。
export const STUDENT_NAMES: string[] = ["JOHN","BOB","NICK"];
Run Code Online (Sandbox Code Playgroud)
把它放在 student-names.ts
import { STUDENT_NAMES } from './path/cosnstants/student-names';
Run Code Online (Sandbox Code Playgroud)
你需要的地方。
就个人而言,我会将它们命名为 studentNames 而不是 STUDENT_NAMES,但这是一个品味问题。
pza*_*ger 10
为常量定义一个抽象类:
export abstract class Constants {
static readonly STUDENT_NAMES: string[] = ["JOHN", "BOB", "NICK"];
static readonly TEACHER_NAME: string[] = ["HARRY", "CHRIS"];
static readonly SCHOOL_CODE: number[] = [100, 102, 107];
}
Run Code Online (Sandbox Code Playgroud)
然后在需要的地方添加此类,import { Constants } from '...';并在其中使用其值const names: string[] = Constants.STUDENT_NAMES;
关于命名我@AdrianBrand同意更愿意像现在的名字studentNames,teacherNames和schoolCodes。
您可以创建一个constants.ts包含所有常量的 TS 文件:
export const constants = {
STUDENT_NAMES: ["JOHN","BOB","NICK"],
TEACHER_NAME: ["HARRY","CHRIS"],
SCHOOL_CODE: [100,102,107]
};
Run Code Online (Sandbox Code Playgroud)
然后,每当您需要一个常量时,您都可以像下面的代码一样调用它:
let studentsNames : any = constants.STUDENT_NAMES;
Run Code Online (Sandbox Code Playgroud)
问候,
| 归档时间: |
|
| 查看次数: |
6972 次 |
| 最近记录: |