visual studio code - JSDoc-fel 'description uppfyller inte regexmönstret' från 'Comments in Typescript'-plugin
JSDoc för koden nedan ger mig alltid felet
Fel: JSDoc-beskrivningen uppfyller inte regexmönstret
i TypeScript (med hjälp av Comments in Typescript Plugin för VS Code) för att skapa dynamiska kommentarer i Visual Studio Code.
Vi följer JsDoc-standarder för att kommentera och dokumentera all kod.
/**
* Validates if entityName is present in the Json Schema
* @param {any} obj Contains the object from the Json Schema
* @param {number} idx It contains the index of the object
* @param {string} entityName It contains the entity name value which has to be validated
* @returns {boolean} True if entity key is present
*/
private validateEntityKey(obj: any, idx: number, entityName: string): boolean {
}
Vad är fel med ovanstående JSDoc?
Svar #1
VSCode-tillägget du använder, Comments in Typescript Plugin for VS Code, säger uttryckligen:
Typescript kommer med många språkkommentarer, som inte bör dupliceras i kommentarerna.
Och exemplen på giltiga JSDocs som de ger innehåller inte typer (med mina kommentarer tillagda):
/**
* // TODO: comment getScriptVersion
* Gets script version
* @param fileName // no type specified
* @returns script version // no type specified
*/
getScriptVersion(fileName: string): string { // type specified here, as per TypeScript conventions
Även om du säger
Vi följer JsDoc-standarder för att kommentera och dokumentera all kod.
Pluginet gör några av dessa standarder överflödiga och regex-mönstret kommer att markera dem som fel.
Istället bör din kod läsas som:
/**
* Validates if entityName is present in the Json Schema
* @param obj Contains the object from the Json Schema
* @param idx It contains the index of the object
* @param entityName It contains the entity name value which has to be validated
* @returns True if entity key is present
*/
private validateEntityKey(obj: any, idx: number, entityName: string): boolean {
}
Vilket nu borde gå igenom, om jag har förstått pluginens funktion korrekt.
Vad jag inte vet är om pluginet felaktigt genererade JSDoc (den från din fråga) med typer automatiskt, eller om du lade till dem själv? Om det är det förstnämnda fungerar något inte som det ska, annars kan du sluta lägga till dem manuellt.
