typescript-typings - 在打字稿中定义对象的类型
问题描述
我有以下对象,它将为我的一个组件输入
export const reminders = {
reminder_per_package: 3,
interval: 24,
reminders: {
monday: { active: true, time: "16:30" },
tuesday: { active: false, time: "17:00" },
wednesday: { active: true, time: "18:00" },
thursday: { active: false, time: "11:00" },
friday: { active: false, time: "12:00" },
},
};
如下
<Reminder values={reminders }/>
在打字稿中,我们将如何定义提醒组件内的值类型?我尝试如下
export type Day = "monday" | "tuesday" | "wednesday" | "thursday" | "friday";
export type DayReminder = {
active: boolean;
time: string;
};
export interface reminders {
reminder_per_package: number;
interval: number;
reminders: {
monday: DayReminder;
tuesday: DayReminder;
wednesday: DayReminder;
thursday: DayReminder;
friday: DayReminder;
};
}
有没有更好的方法来定义它,在打字稿中?而不是重复天的名称我们不能使用Day类型并在一行中定义提醒吗?因为关键是一天有没有办法将其定义如下
export interface IReminder {
reminder_per_package: number;
interval: number;
reminders: {
[Day]: DayReminder; // it gives error on [Day]
};
}
解决方案
推荐阅读
- ios - Swift - 使用 urlsession 和 json 解码器解析 wikidata 不起作用
- python - 将文本文件转换为以空行作为唯一分隔符的字典
- javascript - 如何通过 react/formik 连接到本地 API?
- python - 复制熊猫数据框行并同时更新数据框值的有效方法
- node.js - Node.js中这两种连接MongoDB的方式有什么区别
- android - Android 可绘制动画
- ruby - 使用 Thor 创建嵌套子命令
- python - 将占位符添加到 Django 中的表单字段
- apache-nifi - NIFI——如何从 updateattributes 访问自定义变量到 groovy 脚本
- javascript - 使用未知键和未知值解析对象内部的数组