文档章节

vscode+typescript开发环境搭建

jim19770812
 jim19770812
发布于 2018/06/17 16:01
字数 684
阅读 13
收藏 0

好久没写博客了,趁着端午节期间研究了下typescript,把环境搭建方法和步骤记录下来。

貌似现阶段只有vscode对typescript支持的最好,可以直接debug ts脚本!貌似webstorm也只是能debug编译后的js,无法直接debug ts脚本。

  1. npm要使用最新版本,可以在官网下载并用符号链接配置到 /usr/bin/npm下去。

2.安装

2.1 安装typescript

$ npm install -g typescript  //typescript程序
$ npm install -g ts-node   //这是一个typescript的交互式
控制台,可以用来调试ts脚本,不然只能调试编译后的js

3.配置开发环境

3.1. 初始化

npm init

目录结构

/src/ts //这个目录用来放ts代码
/src/build  //这个目录用来存放编译的js

3.2.添加tsconfig.json 3.2.1.自动创建 $ tsc - init 执行后可以自动创建tsconfig.json文件,包含tsconfig.json的目录就是根目录,区域配置也要放到这个目录 也可以手工创建

{
    "compilerOptions": {
        "module": "commonjs",
        "noImplicitAny": true,
        "removeComments": true,
        "emitDecoratorMetadata": true,
        "experimentalDecorators":true,
        "preserveConstEnums": true,
        "strictNullChecks": true,
        "noImplicitReturns": false,
        "moduleResolution": "node",
        "esModuleInterop":true,
        "target": "es6",/*编译成es6规范的js*/
        "allowJs": false,/*不允许js混合编程,新项目强烈推荐,迁移的老项目只能设置成true了*/
        "sourceMap": true,/*调试时的时候必须开sourceMap*/
        "outDir": "build"//js文件的输出目录
    },
    // "files": [

    // ],
    "include": [
        "src/*"
    ],
    "exclude": [
        "node_modules"
    ]
}

3.2 安装@types 之前是用tsd和typings来管理类型定义,这东西对于智能提示非常有帮助,但现在都不推荐使用了,现在推荐使用@types来管理类型定义。

http://www.cnblogs.com/haogj/p/6194472.html 中有介绍 安装 .d.ts文件的方法如下

$ npm install @types/node --dev-save

之后就可以用vscode打开demo1目录了

4.编译文件 4.1. 一般的编译

$ tsc demo1.ts
$ tsc -w   //可以监视变化即时编译,甚至可以自动刷新浏览器,很牛逼

稍后会编译出一个build/demo1.js文件(如果有错误会准确的提示)

5.编写脚本 在/src/main/ts/创建demo2.ts,内容如下

function greeter(person: string) : string{
    return "Hello " + person;
 }
 
 let user="jim";
 
console.log(greeter(user));

6.配置launch.json 首先按下 ctrl+shift+B,选择构建launch.json。 然后会生成一个/.vscode/launch.json文件,这个文件需要修改一下才可以使用

{
    "version": "0.2.0",
    "configurations": [
        {
            "type": "node",
            "request": "launch",
            "name": "启动程序",
            "program": "${workspaceFolder}/src/main/ts/demo2.ts",
            "outFiles": [
                "${workspaceFolder}/src/build/*.js"
            ]
        }
    ]
}

6.执行调试

先在let user="jim"设置下断点,然后 调试->启动调试就可以开始对demo2.ts脚本的调试了。

如果不装ts-node是无法直接调试ts脚本的,而且装上之后并没有做什么特殊的设置就可以调试ts了,非常棒。

© 著作权归作者所有

共有 人打赏支持
jim19770812
粉丝 21
博文 46
码字总数 27704
作品 0
济南
私信 提问
为什么用Docker,Docker究竟有什么用呢

近年来,Docker越来越火爆,一大堆新概念,轻量级虚拟机,集装箱等概念,眼光缭乱。 慢慢也尝试用vagrant+docker搭建开发环境 和 服务器也用docker搭建测试环境,再逐步正式环境也用上docke...

小和
2016/11/03
73
2
Vagrant 打造跨平台的开发环境

两个项目开发下来,因团队环境不一样,整合修bug成为了一件苦差事。虽然后来搭建了一台测试服务器,但是有时候受网络原因,还是不能连接到测试服务器上。因团队成员能力和习惯都不一样,有的...

cjp路人
2014/08/24
0
0
Symbian开发系列 - 入门篇

要开始我的Symbian开发之旅了, 先收集一些相关资料,如Symbian概述, 开发平台搭建, 参考书籍与网络资源. 【基础】 什么是Symbian 学习Symbian的基本概念 Symbian操作系统 Symbian 入门 【转】...

长征2号
2017/08/09
0
0
【PHP公开课】Docker之编程环境应用

课程介绍 Docker 是一个开源的应用容器引擎。Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。 容器是完...

萤火虫的秋
2018/05/04
0
0
便携式开发环境搭建平台--Coffer

Coffer支持创建孤立和便携式开发环境的轻量级平台。让开发人员搭建相似的开发环境变得容易,但是建议不要用在实际的生产环境中。 适用环境: Python 3 Linux or MacOS 特性: 支持创建孤立的...

匿名
2016/08/03
235
0

没有更多内容

加载失败,请刷新页面

加载更多

Android Messenger进程间客户端向服务端传递数据

Messenger:客户端向服务端传递数据 1.Service: public class MessengerService extends Service { private Messenger messenger = new Messenger(new Handler() { public void handleMess......

Coding缘
7分钟前
0
0
Pod在多可用区worker节点上的高可用部署

一、 需求分析 当前kubernetes集群中的worker节点可以支持添加多可用区中的ECS,这种部署方式的目的是可以让一个应用的多个pod(至少两个)能够分布在不同的可用区,起码不能分布在同一个可用...

zhaowei121
25分钟前
1
0
oracle XTTS介绍

一、什么是XTTS 首先什么是XTTS。XTTS其实是从TTS来的,TTS其实也是传输数据的一种手段,传输数据的时候可能用过EXP的方式,再往后可能用数据泵导入导出一些数据,或者去做备份然后再恢复。其...

突突突酱
26分钟前
0
0
[缺陷分析]半同步下多从库复制异常

引 言 本文是由爱可生研发团队出品的「图解MySQL」系列文章,不定期更新,但篇篇精品。 爱可生开源社区持续运营维护的小目标: 每周至少推送一篇高质量技术文章 每月研发团队发布开源组件新版...

爱可生
26分钟前
0
0
二维数组序号重置

public static function unique_arr($array2D,$stkeep=false,$ndformat=true){ // 判断是否保留一级数组键 (一级数组键可以为非数字) if($stkeep) $stArr = array_keys($array2D); // 判断是......

dragon_tech
29分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部