这是文章问题的目的是在实际如何创建和最初构建Node.js应用程序中使用S.L.I.I.D和干净的体系结构概念来偏转。最后,我们将拥有一个API,例如,我们可以轻松地更改例如快速到fastify,Prisma到Typeorm,postgreSQL,用于MongoDB的后Ql,仅更改环境的差异。跟随此圣Rie,请参阅。
在第一篇文章中,我们将启动项目并配置打字稿。
创建项目:
让我们使用下面生成package.json
文件的命令开始项目。该项目将在您母亲中的哪个地方是您的选择。
yarn init -y
安装偏离以下库:
yarn add @types/node tsup tsx typescript -D
每个软件包的用途是什么:
@types/node
:提供node.js的本地本地类型类型的库。当您想获得类型检查的支持时,它用于打字稿项目。
tsx
:用于直接在node.js中运行打字稿文件(带扩展名.ts)的库,而无需编译JavaScript的文件(扩展名£O .JS)。使用esbuild
增强了TSX软件包以运行Typescript和ESM。
tsup
:这是用于打字稿项目的捆绑和编译工具。它促进了从Code Typescript创建JavaScript软件包,与更复杂的包装工具(例如WebPack和Rollup)相比,它是一种更简单,简约的替代方案。
typescript
:是JavaScript的一种语言(或预设)。 TypeScript将可选类型添加到JavaScript中,该类型支持任何操作系统上任何主机的浏览器大型JavaScript工具。打字稿是为合法和图案的JavaScript编译的。
设置打字稿:
- 在项目的根部创建koud6文件
- 添加以下文件
{
"compilerOptions": {
"target": "es2017",
"strictNullChecks": true,
"module": "commonjs",
"moduleResolution": "node",
"baseUrl": "./src",
"rootDir": "./",
"outDir": "./dist",
"esModuleInterop": true,
"skipLibCheck": true,
"forceConsistentCasingInFileNames": true,
"resolveJsonModule": true,
"strict": true,
}
}
在项目的根部创建.gitignore
文件,其中包含以下内容:
node_modules/
在第一篇文章的结尾,该项目应具有以下结构:
在本文中,我们留在这里。在下一篇文章中,我们将使用Fastify的两个服务器一台服务器,另一台服务器在一个和另一个服务器之间仅改变一个环境的差异。