1. 功能概述和设置
3m

👋欢迎使用带有 React 和 Apollo 的客户端 GraphQL!

此处是我们开始创建支持的前端应用,称为Catstronauts—一个供想要探索宇宙的冒险猫咪使用的学习平台! 😺 🚀

在整个课程中,我们将探讨在客户端上使用的来龙去脉。在最后一课,你将拥有一个功能齐全的前端应用,可以消费来自实时 GraphQL API 的数据并显示这些数据。

先决条件

我们的应用将在后端使用 Node.js,在前段使用 React 18。我们建议使用最新版本的 Node

概念和关键字,如import, map, async, jsx, TypeScript语法和React Hooks,在开始之际应该都是你熟悉的概念。

让我们开始!

什么是GraphQL?

让我们从本课程最重要的一个问题开始。什么是 GraphQL

是面向开发者的现代网页 语言。它转换了应用从API获取数据的方式,能够让你仅用单一查询就能准确获取所需内容,而不是从一系列REST端点拼凑响应。

它使用称为 架构来定义不同类型数据之间的关系。这些数据可以来自任何地方:REST API、WebHook以及数据库,仅举几例!当所有这些不同的 层后得以统一, 就会成为我们 整个系统可做所有操作的唯一真理来源。

这对于前端的我们来说是个好消息:我们不再需要向许多不同的位置发出许多不同的请求了。取而代之的是,我们可以专注于我们的数据 能做什么,而不是它 存储在哪(这意味着有更多酷炫的新功能,而且速度更快!)。

我们正在构建的内容

让我们启动我们的项目,深入了解一些

克隆存储库

在你选择的目录里,使用你首选的终端,克隆该应用的入门存储库

git clone https://github.com/apollographql-education/odyssey-client-side-graphql.git
任务!

注释:如果你在课程的任何时候遇到问题,请随时查看 final 分支以获取一些帮助。

项目结构

以下是文件结构

📦 odyssey-client-side-graphql
┣ 📂 public
┣ 📂 src
┣ 📄 index.html
┣ 📄 package.json
┣ 📄 README.md
┣ 📄 tsconfig.json
┣ 📄 vite.config.ts
┗ 📄 README.md

现在,在你最喜欢的 IDE 中打开存储库。我们在示例中使用的是 Visual Studio Code。

在终端窗口中,导航到项目目录的根目录并运行以下命令来安装依赖项并启动应用程序

npm install && npm start

控制台应该显示一堆输出,以及 http://127.0.0.1:3000/localhost:3000 处正在运行的应用程序的链接。你可以导航到那里,看看现在还没有多少内容渲染。

任务!

接下来

我们的应用程序已经准备就绪!让我们深入了解 的基础知识。

下一步

来分享你的疑问,并对这节课发表你的看法

这门课程目前处于

测试版
.你的反馈将使我们不断进步!如果你遇到困难或感到困惑,请告知我们,我们将为你提供帮助。所有评论均属公开,并必须遵守 Apollo 行为准则。请注意,已解决或已回复的评论可能被移除。

需要一个 GitHub 账号才能在下方发帖。还没有吗? 在我们的 Odyssey 论坛中发帖。