You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

VSCode代码提示失效求助:MongoDB相关对象无补全

VSCode MongoDB代码提示失效问题

问题场景

在MongoDB项目中,我导出了mongoConnect和getDb方法,代码如下:

const mongodb = require("mongodb");
const MongoClient = mongodb.MongoClient;

let _db;

const mongoConnect = (callback) => {
  MongoClient.connect("mongodb://0.0.0.0:27017")
    .then((client) => {
      console.log("Connected!");
      _db = client.db("shop");
      // callback();
    })
    .catch((err) => {
      console.log(err);
      throw err;
    });
};

const getDb = () => {
  if (_db) {
    return _db;
  }
  throw "No database found!";
};

exports.mongoConnect = mongoConnect;
exports.getDb = getDb;

在该文件内,_db变量赋值后调用方法时能正常显示所有属性提示,但在其他文件中通过const db = getDb();获取数据库对象后,无法显示该变量的属性提示,不过代码可正常运行。

我的VSCode配置

{
  "editor.suggestSelection": "recentlyUsed",
  "vsintellicode.modify.editor.suggestSelection": "automaticallyOverrodeDefaultValue",
  "editor.defaultFormatter": "esbenp.prettier-vscode",
  "workbench.colorCustomizations": {},
  "liveServer.settings.donotShowInfoMsg": true,
  "workbench.sideBar.location": "right",
  "editor.cursorBlinking": "phase",
  "files.autoSave": "afterDelay",
  "files.autoSaveDelay": 3,
  "editor.fontFamily": "Fira Code",
  "editor.fontLigatures": true,
  "liveServer.settings.donotVerifyTags": true,
  "javascriptBooster.formattingOptions": {},
  "typescript.validate.enable": false,
  "prettier.embeddedLanguageFormatting": "off",
  "editor.formatOnSave": true,
  "prettier.quoteProps": "preserve",
  "tabnine.experimentalAutoImports": true,
  "bracketPairColorizer.consecutivePairColors": [
    "()",
    "[]",
    "{}",
    //gold, orchid, lightskyblue
    ["Orange", "Amber", "Gold"],
    "Red"
  ],
  "bracketPairColorizer.colorMode": "Independent",
  "vsicons.dontShowNewVersionMessage": true,
  "files.exclude": {
    "**/.classpath": true,
    "**/.project": true,
    "**/.settings": true,
    "**/.factorypath": true
  },
  "security.workspace.trust.untrustedFiles": "open",
  "[dart]": {
    "editor.formatOnSave": true,
    "editor.formatOnType": true,
    "editor.rulers": [80],
    "editor.selectionHighlight": false,
    "editor.suggest.snippetsPreventQuickSuggestions": false,
    "editor.suggestSelection": "first",
    "editor.tabCompletion": "onlySnippets",
    "editor.wordBasedSuggestions": false,
    "editor.defaultFormatter": "Dart-Code.dart-code",
    "editor.wordWrap": "wordWrapColumn",
    "diffEditor.wordWrap": "on",
    "editor.wordWrapColumn": 90
  },
  "dart.hotReloadOnSave": "manual",
  "dartImport.fixOnSave": true,
  "workbench.colorTheme": "GitHub Light Default",
  "terminal.integrated.fontFamily": "monospace",
  "dart.showInspectorNotificationsForWidgetErrors": false,
  "editor.codeLensFontFamily": "Fira Code Light",
  "editor.fontWeight": "normal",
  "files.associations": {
    "*.java": "java",
    "*.js": "javascriptreact"
  },
  "dart.flutterCreatePlatforms": ["android", "windows", "web"],
  "[markdown]": {
    "editor.wordWrap": "on",
    "editor.wordWrapColumn": 80,
    "diffEditor.wordWrap": "inherit"
  },
  "editor.tabSize": 2,
  "workbench.iconTheme": "vscode-icons",
  "window.menuBarVisibility": "toggle",
  "workbench.layoutControl.enabled": false,
  "workbench.editor.tabSizing": "shrink",
  "editor.fontSize": 16,
  "window.commandCenter": true,
  "[javascriptreact]": {
    "editor.formatOnSave": true,
    "editor.defaultFormatter": "esbenp.prettier-vscode"
  },
  "explorer.confirmDragAndDrop": false,
  "editor.minimap.enabled": false,
  "editor.codeActionsOnSave": {},
  "fluttergpt.apiKey": "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",
  "chat-gpt.lang": "en",
  "workbench.startupEditor": "none",
  "eslint.codeAction.disableRuleComment": {
    "location": "sameLine"
  }
}

已尝试的解决方法

  • 更新内置的TypeScript和JavaScript扩展
  • 安装ESLint扩展
  • 安装IntelliCode扩展

内容的提问来源于stack exchange,提问作者samadfullstack

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.18 13:43:14