如果你想学习如何构建高效运行的React应用,这本书正适合你。如果你是Web开发者或软件工程师,知道JavaScript、CSS和HTML在浏览器中的运行方式,本书特别适合你。这一版全面更新,道出了编写现代化React代码的实践和模式。阅读本书无须事先了解React,也不用知道函数式JavaScript。
Alex Banks和Eve Porcello编制的学习路线将教会你如何创建UI,在大型数据驱动型网站中灵巧地显示内容变动,但不重新加载页面。此外,你还将学习函数式编程和ECMAScript的特性。通过这本实用的指南学会如何构建React组件之后,你便会知晓React能为团队带来多大的帮助。
Alex Banks和Eve Porcello是软件工程师、作者和培训讲师。他们合办的公司Moon Highway向全世界的工程开发人员教授JavaScript、Node.js、React和GraphQL课程。他们还为O’Reilly、LinkedIn Learning和egghead.io录制视频及编写培训材料。
前言本书是为那些想学习React 库,以及想学习当前JavaScript 语言技术的开发人员而写的。当下是JavaScript 开发者的黄金时代,整个生态系统蓬勃发展,不断涌现新工具、句法和实践,以期解决开发中遇到的很多问题。笔者写这本书旨在整合相关技术,让你顺利掌握React。本书涵盖状态管理、React 路由、测试和服务器端渲染,不仅介绍基础知识,还将进行实战演练。阅读本书不要求你事先了解React 的任何知识。笔者将从头开始介绍React 的基础知识。同样,也不要求你用过的JavaScript 句法。这部分知识在第2 章介绍,作为后续章节的基础。如果你熟悉HTML、CSS 和JavaScript,阅读本书就没有什么障碍。专攻一个JavaScript 库时,熟悉这三大技术总是好的。在阅读本书的过程中,请随时查阅配套的GitHub 仓库(http://github.com/moonhighway/learning-react)。本书的所有示例都在这个仓库中,你可以自己动手实践。排版约定本书采用下述排版约定。斜体(Italic)表示新术语、URL、电子邮件地址、文件名和扩展名。等宽字体(Constant Width)表示程序清单,在段落中出现则表示程序元素,例如变量、函数名、数据库、数据类型、环境变量、语句和关键字。斜体等宽字体(Constant Width Italic)表示应该由用户原封不动输入的命令或其他文本。使用代码示例本书的补充材料(代码示例、练习题等)可到https://github.com/moonhighway/learning-react 下载。如有技术疑问,或者在使用代码示例的过程中遇到问题,请发电子邮件到bookquestions@oreilly.com。本书是帮你完成工作的。一般来说,如果本书提供了示例代码,你可以把它用到你的程序或文档中。除非你使用了很大一部分代码,否则无须联系我们获得许可。比如,用书中的几个代码片段写一个程序就无须获得许可,销售或分发O’Reilly 旗下书中的示例则需要获得许可;引用书中的示例代码回答问题无须获得许可,将书中大量的代码放到你的产品文档中则需要获得许可。我们很希望但并不强制要求你在引用本书内容时加上引用说明。引用说明一般包括书名、作者、出版社和ISBN,比如:“Learning React by Alex Banks and Eve Porcello (O’Reilly). Copyright 2020 Alex Banks and Eve Porcello, 978-1-492-05172-5.”。如果你觉得自己对示例代码的使用超出了上述许可范围,请通过permissions@oreilly.com 与我们联系。O’Reilly Online Learning40 年间,O’Reilly Media 为众多公司提供技术和商业培训,提升知识储备和洞察力,为企业的成功助力。我们有一群独家专家和创新者,他们通过图书、文章、会议和在线学习平台分享知识和技术。O’Reilly 的在线学习平台提供按需访问的直播培训课程、详细的学习路径、交互式编程环境,以及由O’Reilly 和其他200 多家出版社出版的书籍和视频。详情请访问http://oreilly.com。联系方式请将你对本书的评价和问题发给出版社:美国:O’Reilly Media, Inc.1005 Gravenstein Highway NorthSebastopol, CA 95472O’Reilly Online LearningFor more than 40 years, O’Reilly Media has provided technology and business training, knowledge, and insight to help companies succeed.Our unique network of experts and innovators share their knowledge and expertise through books, articles, and our online learning platform. O’Reilly’s online learning platform gives you on-demand access to live training courses, in-depth learning paths, interactive coding environments, and a vast collection of text and video from O’Reilly and 200 other publishers. For more information, visit http://oreilly.com.How to Contact UsPlease address comments and questions concerning this book to the publisher:O’Reilly Media, Inc.1005 Gravenstein Highway NorthSebastopol, CA 95472800-998-9938 (in the United States or Canada)707-829-0515 (international or local)707-829-0104 (fax)We have a web page for this book中国:北京市西城区西直门南大街2 号成铭大厦C 座807 室(100035)奥莱利技术咨询(北京)有限公司勘误、示例和其他信息可到https://oreil.ly/learningReact_2e 上获取。对本书的评论或技术疑问,可以发电子邮件到bookquestions@oreilly.com。欲了解本社图书、课程、会议和新闻等更多信息,请访问我们的网站http://oreilly.com。我们的Facebook:http://facebook.com/oreilly。我们的Twitter:http://twitter.com/oreillymedia。我们的YouTube:http://www.youtube.com/oreillymedia。致谢笔者接触React 纯粹是机缘巧合。为Yahoo 内部的一个JavaScript 全栈培训项目编写材料时,笔者用的是YUI,然而在2014 年8 月,YUI 终止开发了。我们不得不修改所有课程文件,可是改成什么呢?现在前端应该使用什么呢?答案是React。我们没有立即喜欢上React,几个小时之后才被它吸引。当时我们猜测,React 将产生翻天覆地的影响。非常幸运,我们在早期就选定了它。感谢Angela Rufino 和Jennifer Pollock 对本书第二版的帮助和支持。同时,感谢Ally MacDonald 对版的编辑工作。感谢几位技术审校:Scott Iwako、Adam Rackis、Brian Sletten、Max Firtman 和Chetan Karande。没有Sharon Adams 和Marilyn Messineo,这本书不可能得以存世。Alex 的台电脑,一台Tandy TRS 80 彩色计算机就是他们二人合买的。倘若没有Jim 和Lorri Porcello 及Mike 和Sharon Adams 的关爱、支持和鼓励,本书不会终得以付梓。我们还要感谢加利福尼亚州Tahoe 市的Connexion 咖啡馆,感谢这家店为我们供应完成本书所需的咖啡。同时感谢店主Robin,他的鞭策给了我们无限动力:“写一本编程书?听着就无聊!”