加入收藏 | 设为首页 | 会员中心 | 我要投稿 源码门户网 (https://www.92codes.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 搭建环境 > Windows > 正文

2019年,React开发人员应该掌握的22种神奇工具

发布时间:2019-11-01 21:43:43 所属栏目:Windows 来源:LeanCloud
导读:副标题#e# 众所周知,React 是 JavaScript 库,用于构建出色的用户界面。但是,并不是每个人都在使用相同的工具或都知道所有有用的工具,这些工具有助于使 React 开发体验更有趣,更主动。 如果大家还没使用 React ,或者你有对它感兴趣的朋友,当他们问你

只有这样做之后,我们的控制台才会弹出令人难以置信的烦人警报:

2019年,React开发人员应该掌握的22种神奇工具

但别误会,请把它当成一件好事。利用那些烦人的消息,我们就可以修复那些浪费的重渲染。

4. Create React App

大家都知道 Create React App 是启动开发 React 项目最快的方法(拥有开箱即用的现代功能)。

还有什么能比 npx create-react-app <name> 更简单的呢?

我在 Medium 上的教程(以及 Dev.to)都是用 create-react-app 构建 React 接口界面的,就因为它又快又简单。

我们当中有些人可能不知道如何用 CRA 来创建一个 TypeScript 项目。我们要做的就是在末尾加上 --typescript:

  1. npx create-react-app <name> --typescript 

这会帮我们省去给 CRA 项目手工添加 TypeScript 的麻烦。

5. React-Lifecycle-Visualizer

React-Lifecycle-Visualizer 是一个 npm 软件包,用于跟踪和可视化任意 React 组件的生命周期方法。

与 Why Did You Render 相似,我们可以选择任何组件来启动生命周期可视化工具:

  1. import React from 'react'  
  2. import {  
  3.   Log,  
  4.   VisualizerProvider,  
  5.   traceLifecycle,  
  6. } from 'react-lifecycle-visualizer'  
  7. class TracedComponent extends React.Component {  
  8.   state = {  
  9.     loaded: false,  
  10.   }  
  11.   componentDidMount() {  
  12.     this.props.onMount()  
  13.   }  
  14.   render() {  
  15.     return <h2>Traced Component</h2>  
  16.   }  
  17. }  
  18. const EnhancedTracedComponent = traceLifecycle(TracedComponent)  
  19. const App = () => (  
  20.   <VisualizerProvider>  
  21.     <EnhancedTracedComponent />  
  22.     <Log />  
  23.   </VisualizerProvider>  

运行结果,如下所示:

2019年,React开发人员应该掌握的22种神奇工具

但是,其中一个缺点是它目前仅适用于类组件,因此尚不支持 Hook 。

6. Guppy

Guppy 是 React 的一个友好且免费的应用程序管理器和任务运行器,可以在桌面上运行且支持跨平台,大家可以放心使用。

它提供了很多友好的图形界面,为 React 开发人员的一些典型任务项目提供支持。例如创建新项目,执行任务和管理依赖项。并在 2018 年 8 月添加支持 Windows,因此可以放心,它肯定是跨平台的。

以下是 Guppy 使用时的样子:

2019年,React开发人员应该掌握的22种神奇工具

7. react-testing-library

我一直很喜欢 react-testing-library,因为在编写单元测试时感觉不错。这个包提供了实用的 DOM 测试程序,鼓励良好的测试实践。

此解决方案旨在解决测试实施细节的问题,就像用户可以看到它们一样,而不是测试 React 组件的输入/输出。

测试实施细节并不是确保应用按预期运行的有效方法。当然,我们能够更清楚的了解如何获取组件所需的数据,使用哪种排序方法等。但是,如果我们必须更改实现方式以指向另一个数据库的话,单元测试就会失败,因为这些是耦合逻辑的实现细节。

这是 react-testing-library 解决的一个问题,因为理想情况下,我们只希望我们的用户界面能够正常工作并最终正确显示。只要这些组件能够提供预期的输出,数据如何获取到这些组件实际上并不重要。

(编辑:源码门户网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!