美文网首页
使用typescript构建Koa应用

使用typescript构建Koa应用

作者: 都江堰古巨基 | 来源:发表于2018-10-12 16:33 被阅读0次

    1.首先需要构建package.json文件:

    执行命令:npm init进行初始化
    修改package.json如下:

    {
      "name": "js_server",
      "version": "1.0.0",
      "description": "a server use js to run",
      "main": "index.js",
      "scripts": {
        "test": "echo \"Error: no test specified\" && exit 1",
      },
      "author": "",
      "license": "ISC",
      "devDependencies": {
        "@types/koa": "^2.0.46",
        "@types/koa-router": "^7.0.31",
        "nodemon": "^1.18.4",
        "ts-node": "^7.0.1",
        "typescript": "^3.0.3"
      }
    }
    

    2.安装typescript以及其依赖库:

    npm i koa koa-router
    npm i --save-dev typescript ts-node nodemon  // nodemon主要用于热加载APP
    npm i --save-dev @types/koa @types/koa-router
    

    3.构建tsconfig.json

    此时的项目结构:


    项目结构.png
    {
        "compilerOptions": {
            "module": "commonjs",
            "target": "es2017",
            "noImplicitAny": true,
            "moduleResolution": "node",
            "sourceMap": true,
            "outDir": "dist",  // TS文件编译后会放入到此文件夹内
            "baseUrl": ".",
            "paths": {
                "*": [
                    "node_modules/*",  //根据项目的路径指定
                    "src/types/*"      //根据项目的路径指定
                ]
            }
        },
        "include": [
            "src/**/*"                //根据项目的路径指定
        ]
    }
    
    

    4.构建hello world 的APP

    import * as Koa from 'koa'
    import * as Router from 'koa-router'
    
    const app = new Koa();
    const router = new Router();
    
    router.get('/*',async(ctx) => {
        ctx.body = "Hellow World !";
    })
    
    app.use(router.routes());
    
    app.listen(3000);
    
    console.log('Server is runing !!')
    

    5.配置热加载

    需要在packge.json配置中修改scripts如下:

    "scripts": {
        "test": "echo \"Error: no test specified\" && exit 1",
        "start": "tsc && node dist/app.js",
        "watch-server":"nodemon --watch ./src/app.ts -e ts,tsx --exec ts-node ./src/app.ts"   
     },
    

    6.运行APP

    npm run watch-server

    相关文章

      网友评论

          本文标题:使用typescript构建Koa应用

          本文链接:https://www.haomeiwen.com/subject/dnctnftx.html