参考:

基于Nodejs生态圈的TypeScript+React开发入门教程

NPM install -save 和 -save-dev 傻傻分不清

使用typescript开发node js

TypeScript 3 + Express + Node.js

尝试使用nodejs+typescript+vs code做服务端

一 nodejs环境搭建

二 vscode下载

三 简易服务端

一 nodejs环境搭建

1.1 安装nodejs

Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境。 Node.js 使用了一个事件驱动、非阻塞式 I/O 的模型,使其轻量又高效。

http://nodejs.cn/

下载安装完毕后,任意文件夹下shift+右键,选择此处打开命令窗口,查看node版本

node -v 

查看npm版本

npm -v

二 vs code安装

Visual Studio Code (简称 VS Code / VSC) 是一款免费开源的现代化轻量级代码编辑器,支持语法高亮、智能代码补全、自定义热键、括号匹配、代码片段、代码对比 Diff、GIT 等特性,并针对网页开发和云端应用开发做了优化。软件跨平台支持 Win、Mac 以及 Linux,运行流畅,可谓是微软的良心之作……

1.1 下载vs code

https://code.visualstudio.com

下载后安装

三 简易服务端

1.1 新建项目

任意位置新建项目文件夹test,并用vs code 选择"文件"->"打开文件夹"打开,就相当于“新建项目”了

 1.2 安装typescirpt

TypeScript是一种由微软开发的自由和开源的编程语言。它是JavaScript的一个超集,而且本质上向这个语言添加了可选的静态类型和基于类的面向对象编程。

在vscode里按ctrl+~打开cmd命令行,安装typescript

npm install -g typescript

查看ts版本

tsc -v

  

1.3  创建package.json文件

配置文件package.json,此文件定义了这个项目所需要的各种模块,以及项目的配置信息(比如名称、版本、许可证等元数据)

命令行输入

npm init  

根据提示输入配置信息,最终生成如下

 1.4 创建tsconfig.json文件

tsconfig.json指定了用来编译这个项目的根文件和编译选项

输入

tsc --init

生成tsconfig.json

修改outDir输出文件夹和rootDir源文件目录

并在相应的项目目录下创建bin和src

1.5 安装express

npm install express --save 

使用npm isntall @types/xxx。

对应的类型定义文件将被安装在 工程根目录/node_modules/@types 目录下。

npm install @types/node --save
npm install @types/express --save

  

1.6 创建index.ts文件

以下代码创建一个简易服务器

const app = require('express')();
const http = require('http').Server(app); app.get('/', function(req:any, res:any){
res.send('<h1>Welcome Realtime Server</h1>');
}); http.listen(3000, function(){
console.log('listening on *:3000');
});

在vs code中按ctrl+shift+b,选择构建

可以看到index.ts发布到bin文件夹下index.js

输入

node bin/index.js

则cmd窗口输出listening on *:3000

 

在浏览器打开127.0.0.1:3000

nodejs + typescirpt + vs code的更多相关文章

  1. Nodejs编译Native Code:使用C++构建工具npm

    Nodejs的很多NPM包需要本地编译,通常是C++写的代码,例如图像处理模块等. 这是如果生产环境没有安装Visual Studio 2015等开发工具,通常会编译失败,发现了一个npm专门干这事儿 ...

  2. 6 个JavaScript日期处理库

    1. Later.js Later.js, a stadalone JavaScript library, offers an advanced usage for triggering recurr ...

  3. 微软为.NET程序员带来了最优的跨平台开发体验-WSL

    前言 在前几个Visual Studio Code更新中发现有一个重要得特性,就是nodejs可以使用VS Code在WSL中进行Debug了(WSL是指Win10中的Linux子系统),之前写过一篇 ...

  4. How to Build a Chat Bot Using Azure Bot Service and Train It with LUIS

    Introduction If you haven’t had much programming experience before, building a conversational bot an ...

  5. Kali linux 2016.2(Rolling)中的Exploits模块详解

    简单来将,这个Exploits模块,就是针对不同的已知漏洞的利用程序. root@kali:~# msfconsole Unable to handle kernel NULL pointer der ...

  6. Getting Started With Node and NPM

    Getting Started with Node and NPM Let's start with the basics. Install Node.js: https://nodejs.org.

  7. Nodejs in Visual Studio Code 14.IISNode与IIS7.x

    1.开始 部署IISNode环境请参考:Nodejs in Visual Studio Code 08.IIS 部署Nodejs程序请参考:Nodejs in Visual Studio Code 1 ...

  8. Nodejs in Visual Studio Code 11.前端工程优化

    1.开始 随着互联网技术的发展,企业应用里到处都是B/S设计,我有幸经历了很多项目有Asp.Net的,有Html/js的,有Silverlight的,有Flex的.很遗憾这些项目很少关注前端优化的问题 ...

  9. Nodejs in Visual Studio Code 10.IISNode

    1.开始 Nodejs in Visual Studio Code 08.IIS : http://www.cnblogs.com/mengkzhaoyun/p/5410185.html 参考此篇内容 ...

随机推荐

  1. 【高精度】高精度分数[c++]

    [高精度]高精度分数 时间限制: 1 Sec 内存限制: 64 MB 题目描述 "人无远虑,必有近忧"是修罗王一直以来恪守的信条,为了以防万一,他在很久以前就将<魔法宝典&g ...

  2. 28、初识socket(subprocess模块)

    经过近一个半月的学习我们已经度过了python基础的阶段,今天我们开始学习python网络编程,没有难以理解的逻辑,更注重的是记忆. 本篇导航: 客户端/服务器架构 scoket与网络协议 套接字 基 ...

  3. CoordinatorLayout使用详解: 打造折叠悬浮效果

    1.简介 CoordinatorLayout遵循Material 风格,包含在 support Library中,结合AppbarLayout, CollapsingToolbarLayout等 可 ...

  4. JavaScript数组(三)数组对象使用整理

    一.数组声明方法1. var  a=new Array();2. var a=new Array([size]);3.var a=new Array(['a'],[1],['b'],[123]);4. ...

  5. Css3实现波浪效果3-静态波纹

    一.外框宽度等比例3个椭圆拼合 .container { position: absolute; width: 400px; height: 200px; border: 5px solid rgb( ...

  6. spring mvc 实战化项目之三板斧

    laravel实战化项目之三板斧 spring mvc 实战化项目之三板斧 asp.net mvc 实战化项目之三板斧 接上文希望从一张表(tb_role_info 用户角色表)的CRUD展开spri ...

  7. 【C#】C#线程_基元线程的同步构造

    目录结构: contents structure [+] 简介 为什么需要使用线程同步 线程同步的缺点 基元线程同步 什么是基元线程 基元用户模式构造和内核模式构造的比较 用户模式构造 易变构造(Vo ...

  8. mysql出现unblock with 'mysqladmin flush-hosts'

    朋友发来消息,说一个系统应用登录的时候提示连接超时,让帮忙处理一下.问他应用和数据库是否都正常,回复说数据库好像没有问题,但是应用日志报无法连接数据库. 数据库版本是:5.5.53 让他telnet数 ...

  9. 设置 WPF 的内容支持触摸直接滚动

    在滚动内容上设置属性 ScrollViewer.PanningMode 的值即可. 另外可重写 OnManipulationBoundaryFeedback 方法来替换系统默认的滚动到最上最下时触发的 ...

  10. C语言截取从某位置开始指定长度子字符串方法

    c语言标准库没有截取部分字符串的函数,为啥?因为用现有函数strncpy,很容易做到! ] = {""}; "}; strncpy(dest, src, ); puts( ...