2
我在導入nodejs模塊時遇到了一個小問題。 對於HTTP模塊這句法運作良好:'在TypeScript中導入時無法找到模塊'
import * as http from "http";
但是,當我嘗試做相同的 'mysql2' Node.js的模塊:
import * as database from "mysql2";
我給了我一個錯誤:
Cannot find module 'mysql2'
並拒絕編譯該行。 我甚至試過的語法像這樣(不知道爲什麼):
import {database} from 'mysql2';
但只有當我寫這樣的沒有錯誤:
let database = require('mysql2');
在tsconfig.json我設置:
"module": "commonjs",
"moduleResolution": "node",
當然,我已經安裝了通過NPM項目文件夾中的模塊:
npm install mysql2 --save
所以我的問題是,爲什麼導入不起作用,我在Visual Studio Code中有錯誤?
解釋一切,謝謝! 我早些時候遇到了與'mysql'相同的問題,但是我爲它安裝了DefinetlyTyped,錯誤消失了。 所以我編輯了'mysql'的* d.ts到'mysql2'(因爲它有向後兼容的API),現在它工作的很棒! –