Fix JSDoc param type completions when name hasn’t been written yet (#35787)

This commit is contained in:
Andrew Branch
2019-12-20 15:23:53 -06:00
committed by GitHub
parent a0d47d632d
commit d96be353cb
2 changed files with 19 additions and 1 deletions

View File

@@ -854,7 +854,7 @@ namespace ts.Completions {
insideJsDocTagTypeExpression = isCurrentlyEditingNode(tag.typeExpression);
}
}
if (isJSDocParameterTag(tag) && (nodeIsMissing(tag.name) || tag.name.pos <= position && position <= tag.name.end)) {
if (!insideJsDocTagTypeExpression && isJSDocParameterTag(tag) && (nodeIsMissing(tag.name) || tag.name.pos <= position && position <= tag.name.end)) {
return { kind: CompletionDataKind.JsDocParameterName, tag };
}
}

View File

@@ -0,0 +1,18 @@
/// <reference path="fourslash.ts" />
//// /** @param /*name1*/ {/*type*/} /*name2*/ */
//// function toString(obj) {}
verify.completions({
marker: "type",
exact: completion.globalTypes
});
verify.completions({
marker: "name1",
exact: ["obj"]
});
verify.completions({
marker: "name2",
exact: ["obj"]
});