2016-03-21 2 views
1

Ich habe tatsächlich für ein paar Tage verwirrt & schließlich entschieden, die Frage zu stellen.So lesen Sie die Codebeispiel bei unveränderlichen/React Document Seiten

Das Facebook-Team verwendet diesen Code-Stil auf React & Immutable pages. Kann jemand bitte erklären, wie man diese liest.

List.of<T>(...values: T[]): List<T> 

wir dies wohl lesen Wie sind:

Hier ist eine Kopie des Codes von der Seite verknüpft ist?

+1

Worüber sind wir verwirrt? Die Typ Anmerkungen? In diesem Beispiel nimmt 'List.of' eine variable Anzahl von Argumenten vom Typ' T' und gibt ein Listenobjekt vom Typ 'List 'zurück. Sehen Sie sich die Flow- oder Typescript-Dokumentation an. –

+0

@FelixKling Nur allgemein, wie man diesen Code liest. Was ist , T []: Liste . Wie gesagt, die ganze Linie ergibt für mich keinen Sinn. – Kayote

+2

Dies sind alle Typ Anmerkungen. Vielleicht ist dies ein besseres Beispiel: https://facebook.github.io/immutable-js/docs/#/Collection/count. Wenn Sie in den Dokumenten Typ-Annotationen eingeben, erfahren Sie, welche Art von Werten die Funktion erwartet oder zurückgibt (z. B. Zahl). Für Ihr Beispiel wollen Sie in "Generika" schauen. In typisierten Sprachen ist es relativ häufig: https://github.com/Microsoft/TypeScript-Handbook/blob/master/pages/Generics.md. –

Antwort

1

Diese -

List.of<T>(...values: T[]): List<T> 

bedeutet dies -

Die Funktion List.of < jede Art > (dauert ein oder mehrere Objekte von dass Typ): und gibt eine Liste < davon Geben Sie > ein.

Noch ein weiteres Beispiel von ihren docs -

update(index: number, notSetValue: T, updater: (value: T) => T): List<T> 

bedeutet dies -

Die Funktion Update (nimmt Index, der eine Zahl ist, notSetValue, die von jeder Art ist, und Aktualisierungs Dies ist eine Funktion (die den Wert dieses Typs annimmt) => und gibt diesen Typ zurück und gibt eine Liste dieses Typs zurück.

+0

Danke HazardouS für die Ausarbeitung. – Kayote

+2

Ich finde das TypeScript-Handbuch ein großartiger Begleiter bei der "Entschlüsselung" der unveränderlichen Dokumentation (wie ich kürzlich ähnliches Problem hatte). Stellt sich heraus, es ist alles Standard-TypeScript-Syntax - https://www.typescriptlang.org/docs/handbook/generics.html – Atlas7

+0

Großen Vergleich. Die gleiche Syntax wurde auch von Pascal populär gemacht. – hazardous

Verwandte Themen