microsoft / microsoft/TypeScript
VS Code doesn't show autocomplete for Mongoose MongoDB operators (like $elemMatch, $match,$gte and ...) in JavaScript, while WebStorm does
Personne n'a encore pris cette issue.
- Langage dominant
- Go
- Étoiles
- 111k
- Forks
- 14.3k
- Merge moyen
- 2 j 4 h
- PR mergées (30 j)
- 132
Description
### 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 🙌
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Commencez par reproduire les suggestions manquantes dans un simple fichier JavaScript en utilisant la requête Mongoose de l’issue. Examinez le jsconfig.json mentionné, l’acquisition des types et le comportement du TypeScript language service ; le travail est considéré comme terminé lorsqu’il est établi si la configuration ou la prise en charge par le language service peuvent fournir la complétion des opérateurs MongoDB.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- javascript, mongodb, node.js, typescript
- Domaine
- backend, databases, developer-experience
- Type d'issue
- Fonctionnalité
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Activité
- À l'abandon
- Clarté
- À clarifier
- Accessibilité débutants
- 35/100