Typings实现智能
在Visual Studio Code中通过Typings实现智能提示功能
前言
我们知道在IDE中代码的智能提示几乎都是标配,虽然一些文本编辑器也有一些简单的提示,但这是通过代码片段提供的。功能上远不能和IDE相比。不过最近兴起的文本编辑器的新锐 Visual Studio Code 可以通过 Typings
来对 JavaScript
实现智能提示功能,对于一个文本编辑器来说,这点很难得。所以Visual Studio Code 特别适合用来编写 JavaScript
(Node.js
)程序; 同时,如果我们需要编写一些尝试性的小代码片段,例如:Lodash.js
某个函数的小Demo,因为我们不想研究一个函数的使用方式而去使用IDE新建一个项目,这时候Visual Studio Code 就是一个非常好的选择,而且它同样可以运行和调试 JavaScript
代码(依赖于 Node.js
),并且还包含非常方便的代码提示功能。
从这点来说,我觉得Visual Studio Code 已经算得上是一个精悍的小型IDE了。
通过NPM安装Typings
通过 NPM
我们可以很容易的安装 Typings
,在命令行中输入:
npm install -g typings
安装完成后,在命令行中输入:
typings --version
看到版本信息就表示 typings
工具安装完成了:
NPM
是和Node.js
一起安装的,如果你想使用NPM
的话,那么你应该先安装Node.js
。
安装相关提示信息文件
安装完成后,我们需要安装相应的需要提示功能库或者框架的类型信息文件,在这里我们新建一个文件夹 NodeSnippet
,使用命令行进入到该目录中,分别输入下面两个命令来安装Node
和Lodash
的类型接口信息文件:
typings install node --ambient --save
typings install lodash --save
什么时候需要使用 --ambient
参数:
- 如果安装的包使用
script
标记来引用(如jQuery)(也就是在浏览器中使用)- 这个包是属于环境的一部分(如
node
)时- 该包没有使用
--ambient
安装失败时
这时候我们可以看到我们的 NodeSnippet
目录中多了一些文件:
这些文件就是为我们提供提示信息的类型类型文件(使用TypeScript
定义)。查看Typings
是否支持某个库或框架的智能提示,我们可以使用下面的命令:
typings search exampleName
启用智能提示功能
通过两种方式来启动提示功能:
- 第一种是在需要进行只能提示的文件最上行增加提示信息文件所在目录,格式如下:
/// <reference path="./typings/main.d.ts" />
第二种是在项目所在目录(在这里是
NodeSnippet
文件夹中)增加一个名为jsconfig.json
的空文件。更多
jsconfig.json
文件的内容可以参考:https://code.visualstudio.com/docs/languages/javascript
启用提示功能后我们就可以非常愉快的使用Visual Studio Code 为我们提供的智能提示功能了。如下所示:
注意事项
Typings VS TSD
Typings
是作为TSD
的替代者而出现的,如果你已经安装了TSD
,那么需要知道现在TSD
已经不推荐使用了。如果已经安装TSD请执行下面的命令来移除它:
npm rm -g tsd
使用 CNPM
在国内由于墙
的原因,有时候使用NPM
安装模块的速度上会很慢,这时候我们其实可以选择国内淘宝的NPM
镜像,使用下面的命令来进行安装:
npm install -g cnpm --registry=https://registry.npm.taobao.org
安装完成后使用cnpm
来代替npm
命令即可,例如下面安装一个lodash
模块的示例:
cnpm install lodash
可以看到除了cnpm
替代了npm
其他的并没有任何区别。
参考&进一步阅读
https://github.com/typings/typings
https://code.visualstudio.com/docs/languages/javascript
https://npm.taobao.org/
原文: http://www.codingnote.me/2016/04/30/VsCodeTypings/ 作者: gyzhao
Typings实现智能的更多相关文章
- Visual Studio Code 使用 Typings 实现智能提示功能
前言 我们知道在IDE中代码的智能提示几乎都是标配,虽然一些文本编辑器也有一些简单的提示,但这是通过代码片段提供的.功能上远不能和IDE相比.不过最近兴起的文本编辑器的新锐 Visual Studio ...
- Visual Studio Code使用typings拓展自动补全功能
转自:http://blog.csdn.net/liyijun4114/article/details/51658087 参考来源: 官方介绍: https://code.visualstudio.c ...
- Windows Nodejs 安装教程
Windows Nodejs 安装教程 1: 访问官方地址 https://nodejs.org/en/download/ 2: 解压压缩包文件到指定目录 我直接把压缩包解压到C盘根目录下,并将文件夹 ...
- #Node.js的fs导入遇到的问题和解决方案
一直在使用VS Code,今天打算用Node.js进行文件IO时候遇到了一些问题,fs是Node.js的核心功能之一,一开始我用Javascript编写fs模块的导入. var fs = requir ...
- 通过Typings为Visual Studio Code增强智能提示功能
缘起 最近在学习Node.js及ThinkJS这个框架,用vscode作为开发环境.默认情况下vscode对ThinkJS的代码提示并不好,所以研究了一下,原来可以同通过Typings来让vscode ...
- VS Code nodejs智能补全typings
安装typings node.js自动补全使用npm全局安装typings npm install -g typings -安装语法插件以安装node.js自动补全为例,在项目根目录下使用bash或者 ...
- Visual Studio Code 智能提示文件
Visual Studio Code 开发前端和node智能提示 visual studio code 是一个很好的编辑器,可以用来编写前端代码和nodejs. 我很喜欢使用VSC,现在流行框架对VS ...
- 五小步让VS Code支持AngularJS智能提示
本文想通过配置VS Code来实现对AngularJS的智能提示.在一般的情况下对于在HTML页面是支持提示的.但是在js页面就不是很友好,它是记忆你之前的输入,要是之后有重复的输入,VS Code会 ...
- 让Visual Studio Code对jQuery支持智能提示!
本人新手,对代码各种不熟悉,记不准确,总是打错,造成各种失误!! 其实这个方法应该适合大部分前端开发工具!! 园里子有前人写了一篇文章对智能提示的实现!不过很多新手看不懂吧. http://www.c ...
随机推荐
- CodeForces Round #173 (282E) - Sausage Maximization 字典树
练习赛的时候这道题死活超时....想到了高位确定后..低位不能对高位产生影响..并且高位要尽可能的为1..就是想不出比较好的方法了实现... 围观大神博客..http://www.cnblogs.co ...
- webBrowser中操作网页元素全攻略
原文 webBrowser中操作网页元素全攻略 1.获取非input控件的值: webBrowser1.Document.All["控件ID"].InnerText; 或webBr ...
- @produces在spring mvc中是什么意思
@RequestMapping(value = "/produces", produces = "application/json"):表示将功能处理方法将生产 ...
- 怎样学习HTML5?
怎样学习HTML5?这个话题,问的人非常多,随便百度一下就能看到各种各样的回答.只是感觉每种回答都不给力.以下我给出一个自己理解的HTML5学习的路线图,依照这个路线图学习以后,一般的HTML5项目开 ...
- ASP.NET成员资格与角色管理配置内容
Web.config中进行配置 以便于连接数据库,使用微软提供的Membership类.·····等 <?xml version="1.0" encoding=" ...
- 硬盘被误格式化或Ghost还原后的数据恢复
硬盘格式化(Ghost还原)后的数据恢复 ---diskgenius使用之数据恢复 问题引出:计算机中病毒后用Ghost版本的winxp安装,由于安装途中选择了把映像安装到硬盘而不是分区,安装好后只剩 ...
- MyBatis深入理解一
Mybatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis .iB ...
- 国内使用Google Maps JavaScript API
<!DOCTYPE html> <html> <head> <meta name="viewport" content="ini ...
- 十天学习PHP之第三天
1)按右边的结构:查看改动表结构 2)按右边的浏览:查看表中的数据 3)按右边的SQL:执行SQL语句 4)按右边的插入:插入一行记录 5)按右边的清空:删除表中全部记录 6)按右边的删除: ...
- 进程、线程、轻量级进程、协程和go中的Goroutine
进程.线程.轻量级进程.协程和go中的Goroutine 那些事儿电话面试被问到go的协程,曾经的军伟也问到过我协程.虽然用python时候在Eurasia和eventlet里了解过协程,但自己对协程 ...