6
可能是一个奇怪的问题,但我很好奇,如果有可能做一个界面,其中一个属性或其他需要。Typescript接口 - 可能需要“一个或另一个”属性?
因此,举例来说...
interface Message {
text: string;
attachment: Attachment;
timestamp?: number;
// ...etc
}
interface Attachment {...}
在上述情况下,我想,以确保无论是text
或attachment
存在。
希望这是有道理的。
在此先感谢!
编辑:这是我正在做它现在。认为它有点冗长(输入botkit for slack)。
interface Message {
type?: string;
channel?: string;
user?: string;
text?: string;
attachments?: Slack.Attachment[];
ts?: string;
team?: string;
event?: string;
match?: [string, {index: number}, {input: string}];
}
interface AttachmentMessageNoContext extends Message {
channel: string;
attachments: Slack.Attachment[];
}
interface TextMessageNoContext extends Message {
channel: string;
text: string;
}
但这不会让他有一个文本和附件的信息 – Roberto
感谢您的回复瑞安!这就是我现在正在做的事情。我在上面的问题中加了这个。 不确定是否有更清晰的方式去解决它。 – dsifford