Bar*_*klı 10 node.js visual-studio-code
我试图在https://code.visualstudio.com/docs/languages/javascript后为nodejs项目设置visual studio代码
我在我的根文件夹中创建了一个包含内容的jsconfig.json文件
{
"compilerOptions": {
"target": "ES5", //tried ES6 as well
"module": "commonjs"
}
}
Run Code Online (Sandbox Code Playgroud)
此文件告诉VS Code您正在编写符合ES5的代码,并且您要使用的模块系统是commonjs框架.通过设置这些选项,您可以开始编写引用其他文件中的模块的代码.例如,在app.js中我们需要./routes/index模块,它导出一个Express.Router类.如果在路由上调出IntelliSense,则可以看到Router类的形状.
虽然它似乎不适用于vscode 0.9.1.我在自己的模块上没有智能感知.转到定义也不起作用.
https://code.visualstudio.com/docs/runtimes/nodejs#_great-code-editing-experiences
有没有办法去定义工作?
太长了;如果您直接在对象上设置变量/函数,exports它似乎可以工作。
在尝试了不同的方法来编写模块之后,我发现如果您以某种方式编写模块,它是有效的。这是一个有效的示例。
exports.myFunction = function (a, b) {
return a + b;
};
Run Code Online (Sandbox Code Playgroud)
现在,如果您从另一个文件导入此模块,您将获得智能感知并转到定义将起作用。但是,如果您像这样或任何其他变体编写模块,它将无法工作。
var myModule = {};
myModule.myFunction = function (a,b) {
return a + b;
};
exports = myModule;
Run Code Online (Sandbox Code Playgroud)
在 vscode 存储库上提交了一个问题。
https://github.com/Microsoft/vscode/issues/15004#issuecomment-258980327
如果情况发生变化,我会更新我的答案。
| 归档时间: |
|
| 查看次数: |
12165 次 |
| 最近记录: |