摘要:隨著應用的龐大,項目中的代碼也會越來越臃腫,團隊之間的協作也會遇到難題,如果不一直看文檔,很難知道團隊其他成員寫的方法需要什么參數,返回結果又是什么。一個簡單的服務就實現了。
隨著應用的龐大,項目中 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、編譯
. ode_modules.bin sc
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
如果能看到 Hello Koa,恭喜你,koa 的集成成功。一個簡單的 web 服務就實現了。
后面如果有機會就講下如何操作數據庫。
目錄結構如下:
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/100676.html
摘要:背景當知道要上傳的視頻資料從條變成條時,我就明白,絕對不能再人工處理了。 背景 當知道要上傳的視頻資料從20條變成100條時,我就明白,絕對不能再人工處理了。他們總是想當然的認為,錄入一條數據需要1分鐘,那錄入20條數據就是20分鐘,錄入100條數據,不就是100分鐘嗎?我有時候,真的很想問問他們,沒有考慮過人是會犯錯的嗎?數據越多,出錯的可能就越大;但是數據本身,又是不允許出現紕漏的...
摘要:前端每周清單專注前端領域內容,以對外文資料的搜集為主,幫助開發者了解一周前端熱點分為新聞熱點開發教程工程實踐深度閱讀開源項目巔峰人生等欄目。背后的故事本文是對于年之間世界發生的大事件的詳細介紹,闡述了從提出到角力到流產的前世今生。 前端每周清單專注前端領域內容,以對外文資料的搜集為主,幫助開發者了解一周前端熱點;分為新聞熱點、開發教程、工程實踐、深度閱讀、開源項目、巔峰人生等欄目。歡迎...
摘要:斯坦福宣布使用作為計算機課程的首選語言近日,某位有年教學經驗的斯坦福教授決定放棄,而使用作為計算機入門課程的教學語言。斯坦福官方站點將它們新的課程描述為是最流行的構建交互式的開發語言,本課程會用講解中的實例。 前端每周清單第 11 期:Angular 4.1支持TypeScript 2.3,Vue 2.3優化服務端渲染,優秀React界面框架合集 為InfoQ中文站特供稿件,首發地址為...
閱讀 2222·2021-09-24 10:31
閱讀 3875·2021-09-22 15:16
閱讀 3395·2021-09-22 10:02
閱讀 1010·2021-09-22 10:02
閱讀 1822·2021-09-08 09:36
閱讀 1974·2019-08-30 14:18
閱讀 609·2019-08-30 10:51
閱讀 1863·2019-08-29 11:08