摘要:隨著應(yīng)用的龐大,項(xiàng)目中的代碼也會(huì)越來越臃腫,團(tuán)隊(duì)之間的協(xié)作也會(huì)遇到難題,如果不一直看文檔,很難知道團(tuán)隊(duì)其他成員寫的方法需要什么參數(shù),返回結(jié)果又是什么。一個(gè)簡(jiǎn)單的服務(wù)就實(shí)現(xiàn)了。
隨著應(yīng)用的龐大,項(xiàng)目中 javascript 的代碼也會(huì)越來越臃腫,團(tuán)隊(duì)之間的協(xié)作也會(huì)遇到難題,如果不一直看 api 文檔,很難知道團(tuán)隊(duì)其他成員寫的方法需要什么參數(shù),返回結(jié)果又是什么。
解決的方案有很多,這里不比較各種方法的優(yōu)劣,僅說下選擇 typescript 的考慮:1、接受程序好,ts 文件中可以直接寫 javascript 代碼,平滑過渡;2、vs code 的提示夠好。
下面開始一步一步地搭建 web 服務(wù)( windows環(huán)境 )
一、typescript 開發(fā)環(huán)境如何配置
1、初始化項(xiàng)目
yarn init -y
2、安裝 typescript
yarn add typescript @types/node --dev
3、配置 typescript 編譯環(huán)境
在項(xiàng)目根目錄下新建文件 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、測(cè)試
新文件夾 src 并添加文件 server.ts,在文件中寫下如下代碼
console.log("Hello TypeScript");
5、編譯
. ode_modules.bin sc
6、運(yùn)行
node ./dist/server.js
如果能看到控制臺(tái)輸出
Hello TypeScript
恭喜你,typescript 環(huán)境配置成功!
二、集成 web 開發(fā)框架 koa
1、安裝 koa 及 types
yarn add koa koa-router koa-static @types/koa @types/koa-router @types/koa-static
2、修改 server.ts 文件,輸入如下內(nèi)容
/* * @Description: 后臺(tái)服務(wù)入口 * @version: 0.1.0 */ import * as Koa from "koa"; import * as koaStatic from "koa-static" import { router } from "./router"; const app = new Koa(); /** * @name: 設(shè)置靜態(tài)資源目錄 * @param : undefined * @return : undefined */ app.use(koaStatic("./www")); /** * @name: 使用路由 * @param : undefined * @return : undefined */ app.use(router.routes()); /** * @name: 服務(wù)端口 * @param : undefined * @return : undefined */ const httpPort = 8080 app.listen(httpPort); console.log(`Http Server running on port ${httpPort}`);
3、新建路由文件夾 router 及文件 index.ts
/* * @Description: 后臺(tái)路由組件 * @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、編譯、運(yùn)行
打開瀏覽器,輸入 http://localhost:8080
如果能看到 Hello Koa,恭喜你,koa 的集成成功。一個(gè)簡(jiǎn)單的 web 服務(wù)就實(shí)現(xiàn)了。
后面如果有機(jī)會(huì)就講下如何操作數(shù)據(jù)庫(kù)。
目錄結(jié)構(gòu)如下:
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/100676.html
摘要:背景當(dāng)知道要上傳的視頻資料從條變成條時(shí),我就明白,絕對(duì)不能再人工處理了。 背景 當(dāng)知道要上傳的視頻資料從20條變成100條時(shí),我就明白,絕對(duì)不能再人工處理了。他們總是想當(dāng)然的認(rèn)為,錄入一條數(shù)據(jù)需要1分鐘,那錄入20條數(shù)據(jù)就是20分鐘,錄入100條數(shù)據(jù),不就是100分鐘嗎?我有時(shí)候,真的很想問問他們,沒有考慮過人是會(huì)犯錯(cuò)的嗎?數(shù)據(jù)越多,出錯(cuò)的可能就越大;但是數(shù)據(jù)本身,又是不允許出現(xiàn)紕漏的...
摘要:前端每周清單專注前端領(lǐng)域內(nèi)容,以對(duì)外文資料的搜集為主,幫助開發(fā)者了解一周前端熱點(diǎn)分為新聞熱點(diǎn)開發(fā)教程工程實(shí)踐深度閱讀開源項(xiàng)目巔峰人生等欄目。背后的故事本文是對(duì)于年之間世界發(fā)生的大事件的詳細(xì)介紹,闡述了從提出到角力到流產(chǎn)的前世今生。 前端每周清單專注前端領(lǐng)域內(nèi)容,以對(duì)外文資料的搜集為主,幫助開發(fā)者了解一周前端熱點(diǎn);分為新聞熱點(diǎn)、開發(fā)教程、工程實(shí)踐、深度閱讀、開源項(xiàng)目、巔峰人生等欄目。歡迎...
摘要:斯坦福宣布使用作為計(jì)算機(jī)課程的首選語言近日,某位有年教學(xué)經(jīng)驗(yàn)的斯坦福教授決定放棄,而使用作為計(jì)算機(jī)入門課程的教學(xué)語言。斯坦福官方站點(diǎn)將它們新的課程描述為是最流行的構(gòu)建交互式的開發(fā)語言,本課程會(huì)用講解中的實(shí)例。 前端每周清單第 11 期:Angular 4.1支持TypeScript 2.3,Vue 2.3優(yōu)化服務(wù)端渲染,優(yōu)秀React界面框架合集 為InfoQ中文站特供稿件,首發(fā)地址為...
閱讀 2283·2021-09-24 10:31
閱讀 3948·2021-09-22 15:16
閱讀 3489·2021-09-22 10:02
閱讀 1082·2021-09-22 10:02
閱讀 1907·2021-09-08 09:36
閱讀 2066·2019-08-30 14:18
閱讀 663·2019-08-30 10:51
閱讀 1918·2019-08-29 11:08