ExpressjsとTypescriptによるNODEJSその1
6452 ワード
ExpressjsとTypescriptによるNODEJSその1
このポストでは、私たちはどのようにShryssJSとTypesScriptをゼロからサーバーを作成する方法を参照してください、このポストは理解しやすく、各物事を徹底的に説明するためにいくつかの部分に分割されます.
リポジトリからコードにアクセスできます
始める
NODEJSでプロジェクトを開始する最初のステップは、次のコマンドを実行します.
npm init -y
このコマンドは、ファイルパッケージを作成してプロジェクトを開始します.JSONここで依存関係をインストールしなければなりません.この場合、TypescriptでExpressを使います.
依存:
では次のコマンドを実行しましょう.
npm init express
畝および
npm init -D typescript ts-node @types/node @types/express
一度、すべての依存関係をインストールしました.JSONは以下のようになります.{
"name": "nodejs",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"keywords": [],
"author": "",
"license": "ISC",
"dependencies": {
"express": "^4.17.3"
},
"devDependencies": {
"@types/express": "^4.17.13",
"@types/node": "^17.0.25",
"ts-node": "^10.7.0",
"typescript": "^4.6.3"
}
}
Remember that the versions can change depending on when you read this post.
設定スクリプト
npx tsc --init
tsconfig我々が以前のコマンドで作成したJSONファイルにはたくさんのコードが含まれており、このコードの多くがコメントアウトされているので、あなたの好みに合わせて実験や設定ができます.しかし、いくつかの設定を説明します.私の場合は、TSconfigで以下の設定を使用します.JSON :
{
"compilerOptions": {
"module": "commonjs",
"esModuleInterop": true,
"target": "es6",
"rootDir": "src/",
"outDir": "./build",
"strict": true
}
}
ExpressJSの最初のサーバー
Typescriptを設定すると、それは私たちの最初のWebサーバーを作成する時間です.indexというファイルを作りましょう.TS
このファイルには次のコードがあります.
import express, { Request, Response } from 'express';
const app = express();
app.get('/', (req: Request, res: Response) => {
res.send('Hello World');
});
app.listen(8000, () => {
console.log('The application is listening on port 8000!');
});
まず最初に、要求と応答タイプとともにExpressからExpressをインポートします.一度この行を我々のアプリを初期化する必要が行われますて
const app = express();
ここでメッセージを返すget type endpointを追加するので、次のようにしなければなりません.app.get("/");
我々のアプリを持っているし、我々は我々のアプリを持っているし、我々はこのケースでは、私たちのエンドポイントのメソッドを入れて、これは2つのパラメータを開始する関数を取得する取得、それから我々はそれにミドルウェアを追加することができますが、現時点では、我々はそれが私たちの最初のルートであることを望むようにルートと文字列である2は、我々はちょうどそれをする必要があります/と明示的にこれは私たちの主なルートになることを理解してください.コールバックである2番目のパラメータを追加しなければなりません.このコールバックは、リクエストと応答の2つのパラメータを受け取ります.
app.get('/', (req: Request, res: Response) => {
});
ご覧の通り、すでにタイプを追加しました.2つのパラメータに名前を付けることを忘れないでください.しかし、コンベンションと最も一般的なものは、REQと研究です.このコールバックの内部では、ルートにアクセスするときに実行されます.
app.get('/', (req: Request, res: Response) => {
res.send('Hello World');
});
Red . send (' hello world ');我々が行うことは、我々の呼び出しにテキストで応じるようにそれを言うことです.さあブラウザでこれを見ましょう.しかし、そうする前に、我々は1つのものを必要とします.
そこで書きます.
app.listen(8000, () => {
console.log('The application is listening on port 8000!');
});
これは2つのパラメータを受け取ります、最初のポートは我々のサーバーが聞くでしょう、そして、サーバーが準備ができているとき、実行されるコールバックは現在コンソールに置かれます.ログ.これを考慮して、サーバーを実行します.
私たちがtypescriptで動作しているので、ノードがそれを読むことができるように、我々はjsにコンパイルしなければなりません.
npx tsc --project ./
ビルドフォルダが生成されます.これにはコードがあります.我々が理解しないかもしれないが、すでにコンパイルされます.我々のコードのコンパイルをスピードアップするために、私たちのパッケージにスクリプトを作成することができます.スクリプトセクションのJSON :
"scripts": {
"build": "npx tsc --project ./",
"test": "echo \"Error: no test specified\" && exit 1"
},
コンパイルするために今すぐビルドします.npm run build
スクリプトを作成するたびに、以下のコマンドを実行しなければなりません. npm + run + script name
この時点でコマンドを書くことができます.node ./build/index.js
次の出力が表示されます.❯ node ./build/index.js
The application is listening on port 8000!
Webブラウザを見てみましょう.我々が見ることができるように、我々は我々の終点から反応を持ちます.
あなたがこの記事で見ることができるように、我々はExpressJSとTypesScriptで我々の最初のサーバーをつくりました.
次の部分では、我々はNodemonを使用して開発をスピードアップする方法を見て、我々はまた、さまざまな種類の形式に対応する方法を参照してください.他のHTTP動詞とより多くの要求.
あなたがこのポストについての質問をするならば、あなたはコメントでそれを残すことができます.または、あなたがとにかくそれを残すことができる任意の勧告がある場合.
次の部分は4月19日です.
Reference
この問題について(ExpressjsとTypescriptによるNODEJSその1), 我々は、より多くの情報をここで見つけました https://dev.to/jordandev/nodejs-with-expressjs-and-typescript-part-1-18obテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol