microsoft / microsoft/TypeScript

VS Code doesn't show autocomplete for Mongoose MongoDB operators (like $elemMatch, $match,$gte and ...) in JavaScript, while WebStorm does

Offen
#61,666 4 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Domain: LS: Completion Lists Experience Enhancement Help Wanted Suggestion
Vorherrschende Sprache
Go
Sterne
111k
Forks
14.3k
Ø Merge
2 T. 4 Std.
Gemergte PRs (30 T.)
132

Beschreibung

### Problem

When working with Mongoose in JavaScript (not TypeScript), VS Code does not show autocomplete suggestions for common MongoDB operators like `$inc`, `$eq`, `$ne`, etc.

However, when using WebStorm, these suggestions appear as expected.

### Example

```js
const result = await User.find({
$or: [
{ userName: { $elemMatch: { name: "Mehdi" } } },
{ age: { $gte: 18 } }
]
});
```
In the above example, $or doesn't appear in suggestions while typing in VS Code, but it does in WebStorm.

What I Know
I understand that VS Code relies heavily on TypeScript's language service for JavaScript intelligence.

But since this is a common pattern in many Node.js/Mongoose applications, I'm wondering:

Is there a way to configure VS Code (via jsconfig.json, type acquisition, or something else) to provide better autocomplete for these $ MongoDB operators in plain JavaScript files?

Environment
VS Code: latest

Language mode: JavaScript

Mongoose version: latest

Node.js version: 21

OS: Windows

Thanks for the awesome editor 🙌

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne damit, die fehlenden Vorschläge in einer einfachen JavaScript-Datei mithilfe der Mongoose-Abfrage aus dem Issue zu reproduzieren. Untersuche die erwähnte jsconfig.json, die Typakquise und das Verhalten des TypeScript language service; abgeschlossen bedeutet festzustellen, ob die Konfiguration oder die Unterstützung durch den Language Service die Vervollständigung von MongoDB-Operatoren ermöglichen kann.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
javascript, mongodb, node.js, typescript
Bereich
backend, databases, developer-experience
Issue-Typ
Feature
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Muss geklärt werden
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.