参考:

基于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. 【最短路】道路重建 @upcexam5797

    时间限制: 1 Sec 内存限制: 128 MB 题目描述 小L的家乡最近遭遇了一场洪水,城市变得面目全非,道路也都被冲毁了.生活还要继续,于是市政府决定重建城市中的道路. 在洪水到来前,城市中共有n ...

  2. JAVA自学笔记08

    JAVA自学笔记08 1.构造方法私有,外界就不能再创建对象 2.说明书的制作过程 1)写一个工具类,在同一文件夹下,测试类需要用到工具类,系统将自动编译工具类:工具类的成员方法一般是静态的,因此在测 ...

  3. LSTM Networks

    Understanding LSTM Networks Recurrent Neural Networks Humans don’t start their thinking from scratch ...

  4. 卷积的三种模式:full, same, valid

    通常用外部api进行卷积的时候,会面临mode选择. 本文清晰展示三种模式的不同之处,其实这三种不同模式是对卷积核移动范围的不同限制. 设 image的大小是7x7,filter的大小是3x3 1,f ...

  5. Glide4 用法总结 MD

    Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...

  6. Print all attributes and values in a Javascript Object

    function printObject(o) { var out = ''; for (var p in o) { out += '\n' + ':: ' + p + '(' + typeof(o[ ...

  7. Django 数据表更改

    Django 数据表更改 « Django 开发内容管理系统(第四天) Django 后台 » 我们设计数据库的时候,早期设计完后,后期会发现不完善,要对数据表进行更改,这时候就要用到本节的知识. D ...

  8. No serializer found for class org.hibernate.proxy.pojo.javassist.JavassistLazyInitializer and no properties discovered to create BeanSerializer

    异常信息如下所示: com.fasterxml.jackson.databind.exc.InvalidDefinitionException: No serializer found for cla ...

  9. 使用Deeplearning4j进行GPU训练时,出错的解决方法

    一.问题 使用deeplearning4j进行GPU训练时,可能会出现java.lang.UnsatisfiedLinkError: no jnicudnn in java.library.path错 ...

  10. ionic cordova plugin 安装和使用

    注意事项 ionic1需要ng-cordova plugin的使用都需要放到deviceready事件的回调中, 设备准备好了才能设备交互 plugin只有在真机上才有效果, 模拟器(部分)和brow ...