Έχω ένα πρόβλημα με τη χρήση γενικού τύπου σε μια κλάση. Υπάρχει μια κλάση Item που δέχεται ένα γενικό T το οποίο επεκτείνει τον περιοριστικό τύπο ItemValue και υπάρχει ένας τύπος Items που περιέχει στιγμιότυπα της Item που έχουν τύπο Item<ItemValue
Διαβάστε περισσότερα →
Ας υποθέσουμε ότι έχω μια κλάση σε JS με Typescript όπως αυτή:
type Command = 'F' | 'B' // Forwards, Backwards class Car { private x: number private y: number constructor(x: number, y: number) { this.x = x this.y = y } Διαβάστε περισσότερα →
Προφανώς, αυτό είναι αρκετά απλό χρησιμοποιώντας τη λέξη-κλειδί any:
type SingleParamFunction = (arg: any) => any; const foo: SingleParamFunction = (x: number): number => x + 1;Έχω δοκιμάσει τα εξής:
Διαβάστε περισσότερα →
Θέλω να γράψω μια συνάρτηση υψηλότερης τάξης που παίρνει μια προαιρετική συνάρτηση επιστροφής κλήσης η οποία μπορεί ή να μην αλλάξει τον τύπο της εισόδου της.
Πρώτα δοκίμασα τα εξής χωρίς την επιλογή:
type Fn<T, U> = (x: T) => Διαβάστε περισσότερα →
Το Typescript δεν ελέγχει τον τύπο επιστροφής αν είναι μια εμφωλευμένη αντικείμενο. Σκεφτείτε τον κώδικα παρακάτω, το Typescript δεν θα στείλει σφάλματα ακόμα κι αν η μεταβλητή result στη συνάρτηση A δεν αντιστοιχεί σαφώς στον τύπο Output.
interface Input { a: string; Διαβάστε περισσότερα →
Αν είχαμε μια συνάρτηση που επέστρεφε την τιμή ενός χαρακτηριστικού από ένα αντικείμενο δίνοντας ως όρισμα το αντικείμενο και το όνομα του χαρακτηριστικού ως συμβολοσειρά, πώς θα γράφαμε τους ορισμούς τύπων για αυτή;
const obj = { name Διαβάστε περισσότερα →
Προσπαθώ να περάσω μια συνάρτηση κλήσης πίσω (callback) σε ένα παιδί που είναι μια λειτουργική συνιστώσα (functional component) ώστε να μπορεί να ενημερώνει τον γονέα. Παίρνω ένα σφάλμα Uncaught TypeError: updateVal is not a function μέσα στο παιδί (θα προσθέσω ένα σχόλιο στη γραμμή όπου συμβα
Διαβάστε περισσότερα →
Θέλω να φτιάξω ένα API, εμπνευσμένο από τη λειτουργία it του jest, το οποίο θα φαίνεται έτσι:
Typescript interface Something { (param: number): void modifier: Something anotherModifier: Something }Έτσι θα μπορώ να το
Διαβάστε περισσότερα →
Πρόσφατα δουλεύω με το Angular 11, προσπαθώ να φτιάξω μια συνάρτηση που ελέγχει αν ο λογαριασμός επιτρέπεται να κάνει μια ενέργεια, όμως πρέπει να την παίρνω κάθε φορά που υπάρχει αλλαγή στο SAS Token, δηλαδή, έφτιαξα τις παρακάτω συναρτήσεις
/** *Verify if SAS has permissions * @param sasUri S Διαβάστε περισσότερα →
Χρειάζομαι να εκτελέσω μερικούς μετασχηματισμούς σε ένα αντικείμενο TypeScript ενώ ταυτόχρονα να μπορώ να διατηρήσω ολόκληρο το σχήμα του.
Λοιπόν, έχω ένα αντικείμενο:
const simpleObject = { one: () => ({}), two: (a: number) => ({ a }), }; type SimpleO Διαβάστε περισσότερα →