加速 React 开发的 10 种方法

2025-05-26

加速 React 开发的 10 种方法

虽然我很喜欢写 React 应用,但我还是不想写。我宁愿早点写完,这样我就可以把时间花在电脑前的沙滩上,或者在电脑里玩电子游戏。本着懒惰的心态,这里有十个加速 React 开发的方法。

1. 使用框架

框架剥夺了开发者的自由度。你的决策更少,因为成千上万的优秀开源开发者已经为你做出了决策。他们的决策十有八九比你做的更好,除非你是 Dan Abramov(如果你是 Dan Abramov,请注意我,前辈)。遵循框架设定的路线图,可以节省时间,编写更一致、更健壮的代码。

我最喜欢的 React 框架是Next.js。它支持 SSR、内置路由、自动代码拆分、CSS-in-JS 支持等等。你甚至可以编写 lambda 表达式,与客户端代码共享业务逻辑(例如类型和验证)。如果你在Vercel上托管 Next.js 应用,只需推送到 GitHub 即可部署一个免费的、可无限扩展的应用程序。

其他优秀的框架包括Gatsby.jsRemix

即使您决定不使用框架,您至少也应该使用样板生成器,例如create-react-app

2. 使用 ESLint

我希望你已经在使用ESLint了。没有理由不使用高度可配置的代码,它会在你犯错时提醒你。有两个 ESLint 插件对 React 特别有用(我认为它们是必不可少的):

3. 使用 Prettier

与 ESLint 类似,你应该使用Prettier,这是一款专业的代码格式化程序。Prettier 可以与大多数编辑器集成,在保存时自动格式化代码,确保代码风格一致。我完全赞成机器人霸主剥夺我们在琐事上发挥创造力的自由。

4. 使用人工智能驱动的自动完成功能

我希望前三个建议并不令人意外。如果你是 2020 年的 JavaScript 开发者,使用框架、ESLint 和 Prettier 都是理所当然的。下一个建议可能还不太引人注目。它是我最喜欢的开发者工具,我会把它推荐给朋友们,以证明我仍然可以与 JS 潮人交往。

完全臣服于前面提到的机器人霸主,使用人工智能驱动的自动完成功能。目前为止,我最喜欢的是TabNine。你可能对这些科技流行语翻白眼,但试试看,然后回复我。你一定会印象深刻的。

5. 增强你的 CLI

超越仅仅增强 JavaScript 能力,深入探索 CLI 工具的奇妙世界。我特别推荐以下几种:

  • Oh My Zsh:使用数千个有用的函数、助手、插件、主题等扩充您的 Zsh 配置。
  • Scaffolder:轻松生成样板代码。
  • ZSH-z:快速跳转到您最近访问过的目录。

6. 使用 React 组件库

除非你所在的大公司已经拥有内部组件库,否则你几乎肯定会想使用一个预先构建好的组件库。我实在受不了自己写一大堆代码,divp不是无休止地配置Box代码Text。欣赏一下 Chakra UI 的直观优雅(摘自他们的网站):

import * as React from "react";
import { Box, Image, Flex, Badge, Text } from "@chakra-ui/core";
import { MdStar } from "react-icons/md";

export default function Example() {
  return (
    <Box p="5" maxW="320px" borderWidth="1px">
      <Image borderRadius="md" src="https://bit.ly/2k1H1t6" />
      <Flex align="baseline" mt={2}>
        <Badge colorScheme="pink">Plus</Badge>
        <Text
          ml={2}
          textTransform="uppercase"
          fontSize="sm"
          fontWeight="bold"
          color="pink.800"
        >
          Verified &bull; Cape Town
        </Text>
      </Flex>
      <Text mt={2} fontSize="xl" fontWeight="semibold" lineHeight="short">
        Modern, Chic Penthouse with Mountain, City & Sea Views
      </Text>
      <Text mt={2}>$119/night</Text>
      <Flex mt={2} align="center">
        <Box as={MdStar} color="orange.400" />
        <Text ml={1} fontSize="sm">
          <b>4.84</b> (190)
        </Text>
      </Flex>
    </Box>
  );
}
Enter fullscreen mode Exit fullscreen mode

Chakra UI 是我最喜欢的组件库,而且越来越受欢迎。其他的组件库包括RebassBase Web

7. 使用 CSS-in-JS 库

即使使用组件库,也可能需要编写 CSS。它就像 JavaScript 几乎无法摆脱的兄弟。最好的选择是用 JavaScript 编写 CSS,这样可以将样式范围更紧密地限定在组件内,实现显式依赖,减少级联,并带来其他好处。许多新人已经开始使用Linaria。Linaria 不像其他 CSS-in-JS 库那样需要性能开销,因为它会在构建时提取 CSS 文件,从而实现零运行时。

其他开发人员喜欢EmotionStyled ComponentsJSS

8.使用 Storybook

Storybook允许你快速构建 React 组件原型,并与应用的业务逻辑隔离。你可以模拟不同的 props 配置,以确定组件的渲染方式。Storybook 的一个被低估的优势是它强制执行清晰的架构。我通常会在 Storybook 中构建尽可能多的应用程序,模拟日益复杂的组件甚至页面。当我开始处理业务逻辑时,包装器组件将只负责向我的展示组件提供 props。我的智能组件与我的非智能组件完全分离。如果你还没有读过这篇关于智能组件与非智能组件的经典文章,请阅读它。

9. 不要自己写表单

学习用原生 React 编写表单非常重要。它迫使开发人员识别受控组件和非受控组件之间的区别、主状态管理等等。然而,在编写生产代码时,你几乎肯定会想要使用库。一个好的表单库不仅可以节省你的时间,还可以减少 bug 的发生。

你可能会想:“啊哈,但我想异步验证用户输入”,或者“如果一个输入依赖于另一个输入怎么办?” 不,对于这些以及 99% 的其他用例,都有一个表单库。我推荐Formik,但React Final FormReact Hook Form也是不错的选择。

10. 不要重新发明轮子

React 对懒惰的程序员来说简直是天赐之物。所有最复杂的通用组件都已经写好了!如果你正在编写表格、自动完成组件、动画工具,或者导入 SVG 图标,那就别再写了const Table =,赶紧去找个库吧。以下是我最喜欢的几个库:

关于我们

Carrots正在打造一个专为软件工程师打造的招聘平台。您可以连接 GitHub、Stack Overflow 等平台,让您的简历更加丰富。我们的算法会显示您在世界一流人才中的排名,并将您的个人资料推荐给顶尖公司。欢迎访问我们的Telegram频道,获取开发者职位的实时动态。

文章来源:https://dev.to/sewinter/10-ways-to-speed-up-react-development-3111
PREV
2021 年我最常用的 React 库状态管理 UI 组件测试奖励:表单库
NEXT
在 React 中构建客户数据库