我使用VS Code 1.2.1並學習如何豐富的編輯支持適用於JavaScript。 (intellisense,peek,去定義等)vscode豐富的編輯支持 - 並不總是遵循require()
有兩種情況,其中vscode不會成功加載require() - ed模塊,但有一種情況是它不提供任何豐富的編輯支持。這裏有一個例子w/comments:
// vscode knows about var _ because I already did
// $ typings install lodash
var _ = require('lodash');
// vscode knows about var fu, because the test.js is in project context.
var fu = require('./test.js');
// vscode is unaware of var tree, even though I copied the src into the
// project context.
// $ cp -r node_modules/tnt.tree/src lib/tnt.tree
var tree = require('tnt.tree');
console.log(tree); // ok
最後一個,tnt.tree給我麻煩。上面的代碼使用webpack成功構建,然後運行OK。但是vscode說變量樹是'any',沒有額外的信息。
最後,這裏是我的jsconfig.json:
{
"compilerOptions": {
"target": "ES6",
"module": "commonjs",
"diagnostics": true,
"allowSyntheticDefaultImports": true
},
"exclude": [
"node_modules",
"dist"
]
}
摘要:對於tnt.tree沒有分型。因此,我將感興趣的模塊(tnt.tree)從node_modules中複製到lib /目錄中,以便使vscode在項目上下文中知道它。但這似乎並不奏效。任何指針將不勝感激,因爲我確信這是一個問題,我會在嘗試學習新的Js模塊時反覆探討。