我遇到了使用Typescript而不是JavaScript時出現錯誤或丟失類型信息的問題。使用VS Code的下面的「JS」代碼實際上給我提供了有關被導入的bitcore
變量的信息。但是在使用Typescript時,導入的bitcore
變量給出了一個錯誤,指出它缺少定義文件,如果我使用var
而不是import
來引入模塊,那麼我只是得到一個「任意」類型的變量。Typescript在模塊加載時丟失信息w/no .dts文件
鑑於這是Typescript,我應該能夠獲得至少與Javascript一樣多的類型信息。
編輯:我發現TS/Code的一個令人困惑,隱藏的「功能」,如果沒有tsconfig.json存在,並且類型以「any」形式出現,並且該類型信息在另一個在VS Code工作區打開文件,在這種情況下是一個JavaScript文件,那麼它將在VS Code工作區中「緩存」該類型信息,並將其顯示在.ts文件中,即使TS本身沒有獲取該信息。
TS
import bitcore = require("bitcore-lib")
var key = new bitcore.PrivateKey("testnet")
console.log(key)
JS
var bitcore = require("bitcore-lib");
var key = new bitcore.PrivateKey("testnet");
console.log(key);
TS瓦特/沒有tsconfig.json本,並輸入信息已經從 「緩存」 檢索開口後一個已經檢索到t的不同的JavaScript文件類型信息。
你的TS導入語句不應該像''bitcore-lib''導入位核? – Harald
它仍然給出了關於沒有聲明文件 – Sharpiro