javascript - Är det möjligt att specificera strängformat med TypeScript?
Jag undrar bara - finns det ett sätt att kontrollera om strängen matchar något mönster via TypeScript.
Jag vill inte göra kontrollerna i körningen.
//What I have now
public id: string; //can be whatever string
//What I want to see
public id: IdType; //Some type?
id = '0000-0000-0000-0001'//valid
id = 'whatever'//invalid
Så är det ett sätt att definiera strängformat?
Svar #1
Detta bör nu vara möjligt från och med TS 4.1 beta
Det finns nu en funktion som kallas Template Literal Types, som ser ut ungefär så här (ursäkta det enkla exemplet):
type idType = `${number}-${number}-${number}-${number}`
const id: idType = '0000-0000-0000-0001';
https://devblogs.microsoft.com/typescript/announcing-typescript-4-1-beta/#template-literal-types
Lekplats
