从零开始学typescript构建一个rest风格web服务

栏目: 服务器 · 发布时间: 7年前

内容简介:随着应用的庞大,项目中 javascript 的代码也会越来越臃肿,团队之间的协作也会遇到难题,如果不一直看 api 文档,很难知道团队其他成员写的方法需要什么参数,返回结果又是什么。解决的方案有很多,这里不比较各种方法的优劣,仅说下选择 typescript 的考虑:1、接受程序好,ts 文件中可以直接写 javascript 代码,平滑过渡;2、vs code 的提示够好。下面开始一步一步地搭建 web 服务( windows环境 )

随着应用的庞大,项目中 javascript 的代码也会越来越臃肿,团队之间的协作也会遇到难题,如果不一直看 api 文档,很难知道团队其他成员写的方法需要什么参数,返回结果又是什么。

解决的方案有很多,这里不比较各种方法的优劣,仅说下选择 typescript 的考虑:1、接受程序好,ts 文件中可以直接写 javascript 代码,平滑过渡;2、vs code 的提示够好。

下面开始一步一步地搭建 web 服务( windows环境 )

一、typescript 开发环境如何配置

1、初始化项目

yarn init -y
复制代码

2、安装 typescript

yarn add typescript @types/node --dev
复制代码

3、配置 typescript 编译环境

在项目根目录下新建文件 tsconfig.json

{
  "compilerOptions": {
    "target": "es2017",
    "outDir": "./dist",
    "module": "commonjs",
    "emitDecoratorMetadata": true,
    "experimentalDecorators": true,
    "lib": [         
       "es6"
    ],
    "noImplicitAny": false,
    "sourceMap": false,
    "allowJs": true
  },
  "include": [        
    "./src/**/*"
  ],
  "exclude": [ 
    "node_modules" 
  ] 
}
复制代码

4、测试

新文件夹 src 并添加文件 server.ts,在文件中写下如下代码

console.log("Hello TypeScript");
复制代码

5、编译

.\node_modules\.bin\tsc
复制代码

6、运行

node ./dist/server.js
复制代码

如果能看到控制台输出

Hello TypeScript
复制代码

恭喜你,typescript 环境配置成功!

二、集成 web 开发框架 koa

1、安装 koa 及 types

yarn add koa koa-router koa-static @types/koa @types/koa-router @types/koa-static
复制代码

2、修改 server.ts 文件,输入如下内容

/*
 * @Description: 后台服务入口
 * @version: 0.1.0
 */
import * as Koa from 'koa';
import * as koaStatic from 'koa-static'
import { router } from './router';    

const app = new Koa();    

/**
 * @name: 设置静态资源目录
 * @param : undefined
 * @return : undefined
 */
app.use(koaStatic('./www'));    
/**
 * @name: 使用路由
 * @param : undefined
 * @return : undefined
 */
app.use(router.routes());    
/**
 * @name: 服务端口
 * @param : undefined
 * @return : undefined
 */
const httpPort = 8080
app.listen(httpPort);    
console.log(`Http Server running on port ${httpPort}`);
复制代码

3、新建路由文件夹 router 及文件 index.ts

/*
 * @Description: 后台路由组件
 * @version: 0.1.0
 */
import * as Router from 'koa-router';    

const router = new Router();

router.get('/*', async (ctx) => {
  ctx.body = 'Hell koa';
})

export { router }
复制代码

4、编译、运行

打开浏览器,输入 http://localhost:8080

从零开始学typescript构建一个rest风格web服务

如果能看到 Hello Koa,恭喜你,koa 的集成成功。一个简单的 web 服务就实现了。

目录结构如下:

从零开始学typescript构建一个rest风格web服务

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

技术赋权

技术赋权

郑永年 / 邱道隆 / 东方出版社 / 2014-4-1 / CNY 45.00

在本书中,作者对中国互联网的历史做了一次突破性的研究,细致又全面地观察了中国互联网对于国家和社会的影响,发现互联网给中国的社会—政治变革带来了新的动力。政府权力和社会力量在以互联网为媒介的公共领域中转换。 从大量的数据梳理和事实分析中,作者得出了四重的研究结论。首先,互联网给政府和社会都增加了权力。互联网在促进政治自由化中扮演了重要的角色,使政府更加开放、透明和负责任。第二,互联网产生了大量......一起来看看 《技术赋权》 这本书的介绍吧!

URL 编码/解码
URL 编码/解码

URL 编码/解码

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换