Υπάρχει τρόπος να δηλώσετε μια διαδοχική ένωση λεκτικών συμβολοσειρών στο Typescript

Θέλω να δηλώσω έναν τύπο ένωσης κυριολεκτικών συμβολοσειρών: "10" | "11" | ... | "99".

Σκέφτηκα μια λύση για να παρακάμψω το πρόβλημα, αλλά δεν δούλεψε

const arr = Array.from({ length: 90 }, (_, i) => i + 10) as const; // expected arr type is

Διαβάστε περισσότερα →

Καλύτερος Τύπος TypeScript για JSON String { String : String[] }

Έχω ένα αρχείο JSON που θα ήθελα να χρησιμοποιήσω σε TypeScript, αλλά δεν είμαι σίγουρος πώς να ορίσω τον τύπο/την διεπαφή.

Βασικά ορίζει τη διάταξη ενός εικονικού πληκτρολογίου. Έτσι, θα έχει ένα όνομα διάταξης και στη συνέχεια κάθε σειρά θα έχει ένα όνομα.

Το όνομα διάταξης (π.χ. «προεπιλογή»,

Διαβάστε περισσότερα →

TypeScript έλεγχος αν μια συμβολοσειρά είναι τιμή κλειδιού σε ένα interface

const string = 'world'; const string2 = 'bar'; const string3 = 'test'; interface example { hello: 'world'; foo: 'bar'; };

Πώς μπορώ να ελέγξω αν μια συμβολοσειρά είναι μια τιμή κλειδιού σε μια διεπαφή;

Έτσι ώστε στο παράδειγμα string και str

Διαβάστε περισσότερα →

Συμπεράνετε έκφραση από μια συμβολοσειρά σε Typescript

Δεδομένου του παρακάτω κώδικα, όλα φαίνεται να είναι εντάξει (δες το πεδίο δοκιμών):

type PathParam<T> = T extends `${string}:${infer U}` ? U : never; type Param = PathParam<"/post/:post_id">; // type Param = "post_id"

Αλλά γίνεται λίγο πιο περίπλοκο όταν υπάρχε

Διαβάστε περισσότερα →

javascript - Πώς να αναζητήσετε ένα στοιχείο στη βάση δεδομένων όταν ο τύπος είναι String | String[] χρησιμοποιώντας τύπους ένωσης στο typescript

Καλώ μια μέθοδο sendEmail που στέλνει ένα email σε έναν μεμονωμένο χρήστη ή σε μια ομάδα χρηστών (ο τύπος του προς email είναι string | string[])

Υπάρχει ένας καθαρότερος/καλύτερος τρόπος να προσδιορίσω αν είναι ένας πίνακας ή έν

Διαβάστε περισσότερα →

Υπάρχει τρόπος να εξαχθούν οι εμφωλευμένοι τύποι από ένα αντικείμενο, βασισμένοι σε συμβολοσειρές σε πίνακα στο TypeScript

Προσπαθώ να δημιουργήσω μια τυποποιημένη συνάρτηση σύγκρισης με ασφάλεια τύπων ώστε να είμαι σίγουρος ότι πάντα ταξινομώ με υπάρχουσες τιμές. Μέχρι στιγμής έχω κάνει τα εξής:

export enum SortDirection { ASCENDING = "ASCENDING",

Διαβάστε περισσότερα →

tsc - Typescript :: σε ένα αντικείμενο, χρησιμοποιήστε την συμβολοσειρά κλειδιού για να υπολογίσετε τον τύπο της τιμής του

Έχω βρει αυτό το φανταστικό plugin για το Fastify (https://github.com/Coobaha/typed-fastify) που χρησιμοποιεί την ακόλουθη σύνταξη για να συμπεράνει τους σωστούς τύπους που δίνονται στην Υπηρεσία, δεδομένου ενός σχήματος τύπου T.

import {Schema, Service} from '@coobaha/t

Διαβάστε περισσότερα →

Typescript: Δημιουργία αναδρομικού mapped τύπου που αντιστοιχεί από υπάρχον τύπο σε string

Δεδομένου ενός τύπου, πώς μπορώ να γράψω έναν αναδρομικό τύπο χαρτογράφησης που παράγει έναν τύπο που είναι ο ίδιος με όλα τα ίδια κλειδιά αλλά με τους τύπους τους να είναι συμβολοσειρές αντί για όποιοι είναι οι αρχικοί τύποι τους; Συγκεκριμένα, θέλω να χει

Διαβάστε περισσότερα →

typescript - Πώς να περάσετε μια περιορισμένη συμβολοσειρά σε έναν τύπο χρησιμοποιώντας ως παραμέτρους μια παράμετρο που χρησιμοποιεί τον ίδιο περιορισμό

Μπορώ να φτιάξω αριθμό σαν αυτό:

type Digits = '0'| '1'| '2'| '3'| '4'| '5'| '6'| '7'| '8'| '9' type NonZero = Exclude <Digits, '0'> type Negative = '-' type PositiveNumbers = | NonZero | `${NonZero}${Digits}` | `${NonZero}${D

Διαβάστε περισσότερα →

TypeScript - Πώς να δοκιμάσετε ένα String που ρίχνεται χρησιμοποιώντας το Jest

Συνάντησα μια κατάσταση όπου μια συνάρτηση πετάει μια συμβολοσειρά.

Είμαι ενήμερος ότι στο jest έχουμε το matcher toThrow που μας επιτρέπει να ελέγχουμε ότι οι συναρτήσεις πράγματι πετούν σφάλματα. Αλλά αυτός ο matcher λειτουργεί μόνο όταν αυτό που πετιέται είναι ένα σφάλμα (Error).

Είναι δυνατόν να επαληθεύσου

Διαβάστε περισσότερα →