3 ms·
Wouldn't it be better to use a JSON Schema validator in this case?
by whatever_dude 10y ago
Wouldn't it be better to use a JSON Schema validator in this case?
- anko 10y agoThen you're maintaining two definitions - typescript ones and json schema ones. But thanks for the idea :)
- whatever_dude 10y agoWell, you could have one or the other and then just convert a schema to an Interface [1], or vice versa [2]. The reason I like schema-first is because a schema allows you to be way more strict about what's accepted in most cases, e.g. validating an entry via RegEx. It tends to make APIs safer and runtime errors more clear. [1] https://github.com/bcherny/json-schema-to-typescript https://github.com/bcherny/json-schema-to-typescript [2] https://github.com/YousefED/typescript-json-schema https://github.com/YousefED/typescript-json-schema
- gcanti 10y agoYou could write the runtime definition and extract the static types from that https://github.com/gcanti/io-ts https://github.com/gcanti/io-ts
- anko 10y agothanks for the link - i've never seen that before :)
- ng12 10y agoWell you need both right, the Typescript interface and the JSON Schema? There's still the possibility of a mismatch there.