簡體   English   中英

Typescript 自動完成在 VSCode 中不起作用

[英]Typescript auto-complete not working in VSCode

我正在嘗試在 ts 文件中使用 Puppeteer,它工作正常,除了 VSCode Intellisense 在我進入 a.ts 而不是 a.js 文件時立即停止工作。 我看過一些關於此事件的帖子,但沒有人能幫助我。 我做了什么:

  • 通過 npm init 創建了一個項目
  • 安裝依賴如下:
"dependencies": {
"@types/node": "^14.0.14",
"events": "^3.1.0",
"puppeteer": "^4.0.1",
"typescript": "^3.9.5" }

  "devDependencies": {
"puppeteer-tsd": "0.0.2"  }
  • 創建 tsconfig.json

     "target": "es5", "lib": ["es2015", "dom"], "outDir": "./dist", . . . "include": ["src", "node_modules/puppeteer-tsd/src/index.d.ts"]
  • 創建 src 和 dist 文件夾

  • 在我的 src 中放一個 main.ts

  • 告訴 VSCode 使用項目 TS 版本而不是它自己的

然后我編譯了。 一切正常。 但是我在打字時沒有智能感知來幫助我。 所以我在我的 src 目錄中創建了一個 .js 文件,將我的 main.ts 中的代碼復制到其中,然后我讓 Intellisense 完美地處理所有建議等等。 而且我不知道除了接受它和沒有它的代碼之外我還能嘗試什么。 對於可能出現的問題的任何建議,我將不勝感激。 提前致謝!

編輯:同時我發現,它可以很好地處理非導入函數,如 console.log()。 它只是 Puppeteer(或者可能是任何導入的模塊)。

編輯 2:這是我的日志文件的鏈接。

除了需要正常運行的擴展vscode.typescript-language-features提供的 VSCode 的 TypeScript 語言功能之外,您的導入必須正確,以便考慮要考慮的模塊的內置或打包 ( @types/x ) 類型聲明。

import/require

import x = require('x');

為您提供類型意識,但僅在 TypeScript 中有效。

const/require

const x = require('x');

在 TypeScript 中也有效,但不會給你類型意識; x將是any類型。


有關模塊導入的更多信息,請參閱此問題

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM