2017-03-15 22 views
1

Gibt es eine Möglichkeit, eine korrekte Beschreibung für eine Eigenschaft mit speziellen Symbolen wie "+" in jsdoc zu machen?JSDoc: Name der Eigenschaft

Beispiel:

/** 
    * @typedef {Object} TestObject 
    * @property {string} "id+name" 
    */ 

"id + Name" scheint in diesem Fall eine ungültige Syntax zu sein.

Antwort

1

Sie müssen überprüfen, was die @property laut Dokumentation ist. Grundsätzlich ist dies der Variablenname innerhalb einer Klasse. Recht? In diesem Fall sollten Sie der JS-Konvention für Variablennamen folgen. Dies ist die Referenz auf den Post zu entdecken ... What characters are valid for JavaScript variable names?. Offensichtlich ist der Variablenname "ID + Name" nicht gültig. Im Folgenden sind Accessoren dieser Eigenschaft ...

TestObject.id+name // fail 
TestObject["id+name"] // would work for most of the browsers 

Die Frage nach JSDoc Schöpfer, wie sie Eigenschaften bestimmter Typ @property Tag überprüfen. Ich bin fest davon überzeugt, dass sie auf dieselbe JS-Konvention für Variablennamen verweisen würden. Sicher genug, Sie können es nicht als Antwort auf Ihre Frage akzeptieren. Vielleicht liefert jemand anderes oder jemand vom JSDoc-Team eine bessere Idee.

+1

Zweitens ist ein gültiger Accessor übrigens und das ist der Punkt. – shadeglare

+0

@shadeglare Ja, das stimmt, das würde mit den meisten Browsern funktionieren, aber JSDoc mag es nicht, also würde intellisense nicht verstehen, was beim Typ "TestObject." Angezeigt wird. Nicht sicher, dass ein Grund, die Variablen so zu erstellen. Nur für die Theorie? Wie auch immer, danke fürs Zeigen, ich werde die Antwort modifizieren. –

Verwandte Themen