本片文章翻译一篇 使用 apollo-server + typescript 搭建 GraphQL API
文章目录
为什么要使用 Typescript?
Typescript是javascript的类型化超集,可编译为纯javascript真的很棒。始于JavaScript,归于JavaScript
Typescript 用于应用程序规模的javascript开发。随着javascript代码增长、无论是前端还是后端维护和重用代码都变得越来越困难。javascript无法进行强类型检查和编译时错误检查,因此提出Typescript弥补这种差距。
利弊
🚀javascript 超集:将您的.js文件重命名为.ts文件💥。Typescript具有易于学习的曲线,您可以逐步学习它
🚀先进的Javascript:TypeScript提供最新的和不断发展的JavaScript特性,包括那些来自2015年的ECMAScript和未来的提案中的特性,比如异步功能和Decorators,以帮助建立健壮的组件。
🚀编译: 如果Typescript发现某些语法错误,它将编译并生成编译错误。它有助于在脚本实际运行和失败之前突出错误。
🚀强类型:Typescript 通过TLS(Typescript Language Service)带有可选的静态类型和类型断言系统。此外还为IDE提供代码分析和自动补全功能。
🤷♂️ 没有弊端
创建基本 typescript配置
设置项目
$ mkdir typescript-apollo-express-graphql-api
$ cd typescript-apollo-express-graphql-api
$ npm init --y
安装依赖和初始化ts
安装 Typescript 并使用 npx生成 tsconfig.json
文件
npm i typescript ts-node-dev -D
npx tsc --init --rootDir src --outDir dist --lib dom,es6 --module commonjs --removeComments
输出 Hello World 👋
- 创建
/src
目录和 server.ts文件
mkdir src && cd src && touch server.ts
- 打印测试日志
// server.ts
console.log('Hey 👋');
- 调整
package.json
脚本如下:
"scripts": {
"dev": "ts-node-dev --respawn --transpileOnly ./src/server.ts",
},
这样,您应该可以在终端中输入 npm run dev
来启动 ts-node-dev并查看我们到打印的内容,如果文件内容更改则也会重新编译。