求真百科欢迎当事人提供第一手真实资料,洗刷冤屈,终结网路霸凌。

JavaScript全栈开发实战查看源代码讨论查看历史

事实揭露 揭密真相
跳转至: 导航搜索

来自 孔夫子网 的图片

JavaScript全栈开发实战》,Adam,D.,Scott,安道 著,出版社: 中国电力出版社。

随着科学技术日新月异地发展,传播知识信息手段[1],除了书籍、报刊外,其他工具也逐渐产生和发展起来。但书籍的作用,是其他传播工具或手段所不能代替的。在当代,无论是中国,还是其他国家,书籍仍然是促进社会政治、经济、文化发展必不可少的重要传播工具[2]

内容简介

本书详细说明了如何创建一个能适应各种平台的CRUD风格的应用。本书主要内容有:了解GraphQL查询数据的简单流程。学习API、Web应用和原生应用验证身份的共同方式。使用React和Styled Components构建高性能的Web应用。使用React Native编写可编译为原生代码的iOS和Android跨平台应用。学习使用Electron编写桌面应用。

目录

序 .1

前言 .3

第 1 章 开发环境 9

1.1 文本编辑器 . 10

1.2 终端 10

1.2.1 使用专门的终端应用 10

1.2.2 使用 VSCode 11

1.2.3 在文件系统中变换位置 11

1.3 命令行工具和Homebrew(仅适用Mac 用户) 12

1.4 Node.js 和 NPM 12

1.4.1 在 macOS 中安装 Node.js 和 NPM 13

1.4.2 在 Windows 中安装 Node.js 和 NPM 13

1.5 MongoDB 14

1.5.1 在 macOS 中安装和运行 MongoDB . 14

1.5.2 在 Windows 中安装和运行 MongoDB . 15

1.6 Git 16

1.7 Expo 16

1.8 Prettier 17

1.9 ESLint 17

1.10 美化 . 18

1.11 小结 . 18

第 2 章 API 简介 19

2.1 构建什么 19

2.2 如何构建 20

2.3 开始动手 21

2.4 小结 22

第 3 章 使用Node 和Express 开发Web 应用 23

3.1 Hello World . 23

3.2 Nodemon 24

3.3 扩展端口选项 26

3.4 小结 27

第 4 章 首个 GraphQL API 28

4.1 把服务器(初步)改造成 API 28

4.2 GraphQL 基础知识 . 33

4.2.1 模式 33

4.2.2 解析器 . 34

4.3 改造 API 35

4.4 小结 43

第 5 章 数据库 44

5.1 MongoDB 入门 . 45

5.2 在应用中连接 MongoDB . 47

5.3 在应用中读写数据 51

5.4 小结 59

第 6 章 CRUD 操作 60

6.1 分离 GraphQL 模式和解析器 60

6.2 编写 GraphQL CRUD 模式 . 64

6.3 CRUD 解析器 65

6.4 日期和时间 . 67

6.5 小结 70

第 7 章 用户账户和身份验证 71

7.1 应用身份验证流程 71

7.2 加密和令牌 . 73

7.2.1 加密密码. 73

7.2.2 JSON Web Tokens 74

7.3 在 API 中集成身份验证功能 . 75

7.3.1 User 模式 76

7.3.2 身份验证解析器 . 78

7.4 把用户添加到解析器上下文中 . 82

7.5 小结 85

第 8 章 用户操作 .86

8.1 准备工作 86

8.2 新建笔记时指定用户 . 87

8.3 用户的更新和删除权限 89

8.4 用户查询 91

8.5 收藏笔记 94

8.6 嵌套查询 99

8.7 小结 . 102

第 9 章 细节优化 103

9.1 Web 应用和 Express.js 最佳实践 103

9.1.1 Express Helmet . 103

9.1.2 跨域资源共享 104

9.2 分页 . 105

9.3 数据限制 107

9.4 其他事项 109

9.4.1 测试 109

9.4.2 订阅 109

9.4.3 Apollo GraphQL Platform 109

9.5 小结 . 110

第 10 章 部署 API . 111

10.1 托管数据库 112

10.2 部署应用 . 118

10.2.1 项目设置 118

10.2.2 部署 . 120

10.2.3 测试 . 120

10.3 小结 121

第 11 章 用户界面和 React 122

11.1 JavaScript 和 UI 123

11.2 JavaScript 声明式界面 . 124

11.3 React 入门 124

11.4 小结 130

第 12 章 使用React 构建Web 客户端 . 131

12.1 构建什么 . 131

12.2 如何构建 . 132

12.3 开始动手 . 133

12.4 构建 Web 应用 . 134

12.5 路由 136

12.6 UI 组件 141

12.7 小结 144

第 13 章 装饰应用 145

13.1 创建布局组件 145

13.2 CSS 148

13.2.1 CSS-in-JS 149

13.2.2 创建一个按钮组件 150

13.2.3 添加全局样式 . 152

13.2.4 组件样式 154

13.3 小结 158

第 14 章 使用 Apollo Client 159

14.1 设置 Apollo Client . 160

14.2 查询 API . 162

14.3 动态查询 . 173

14.4 分页 177

14.5 小结 179

第 15 章 Web 身份验证和状态管理 180

15.1 创建注册表单 180

15.1.1 React 表单和状态 . 184

15.1.2 signUp 变更操作 186

15.1.3 JSON Web Token 和本地存储器 189

15.2 重定向 . 190

15.3 为请求附加首部 190

15.4 本地状态管理 191

15.5 退出 195

15.6 创建登录表单 198

15.7 受保护的路由 203

15.8 小结 205

第 16 章 创建、读取、更新和删除操作 207

16.1 新建笔记 . 207

16.2 读取用户的笔记 214

16.3 更新笔记 . 218

16.4 删除笔记 . 226

16.5 收藏笔记 . 228

16.6 小结 232

第 17 章 部署Web 应用 . 233

17.1 静态网站 . 233

17.2 我们的部署流水线 . 235

17.2.1 使用 Git 托管源码 235

17.2.2 使用 Netlify 部署 237

17.3 小结 239

第 18 章 使用Electron 开发桌面应用 240

18.1 构建什么 . 240

18.2 如何构建 . 241

18.3 开始动手 . 241

18.4 首个 Electron 应用 . 242

18.5 特别处理 macOS 应用窗口 244

18.6 开发者工具 245

18.7 Electron API 246

18.8 小结 247

第 19 章 使用Electron 集成现有的Web 应用 248

19.1 集成 Web 应用 . 248

19.2 配置 251

19.3 内容安全策略 252

19.4 小结 255

第 20 章 部署Electron 应用 . 256

20.1 Electron Builder 256

20.2 针对当前平台构建 . 258

20.3 应用图标 . 259

20.4 针对多个平台构建 . 260

20.5 代码签名 . 260

20.6 小结 261

第 21 章 使用React Native 开发移动应用 . 262

21.1 构建什么 . 263

21.2 如何构建 . 263

21.3 开始动手 . 264

21.4 小结 268

第 22 章 移动应用shell . 269

22.1 React Native 构件 269

22.2 样式和 Styled Components 271

22.3 路由 275

22.3.1 使用 React Navigation 实现标签页路由 276

22.3.2 堆叠导航 279

22.3.3 添加界面标题 . 284

22.4 图标 285

22.5 小结 287

第 23 章 GraphQL 和React Native 288

23.1 创建列表和滚动内容视图 289

23.2 使用 Apollo Client 操作 GraphQL . 297

23.3 添加加载中指示符 . 304

23.4 小结 306

第 24 章 移动应用身份验证 307

24.1 身份验证路由流程 . 307

24.2 创建登录表单 317

24.3 通过 GraphQL 变更操作验证身份 . 322

24.4 带身份验证信息的 GraphQL 查询 . 324

24.5 添加注册表单 329

24.6 小结 335

第 25 章 分发移动应用 337

25.1 配置 app.json 337

25.2 图标和应用加载界面 340

25.2.1 应用图标 340

25.2.2 启动画面 341

25.3 发布到 Expo 中 342

25.4 创建原生构建包 343

25.4.1 iOS 344

25.4.2 Android 345

25.5 分发到应用商店中 . 346

25.6 小结 346

后记 347

附录A 在本地运行 API 349

附录B 在本地运行Web 应用 . 351

作者介绍 353

封面介绍 353

参考文献