react 编码规范

简介: react 编码规范

函数名称

按照惯例,通常将事件处理程序命名为 handle,后接事件名。你会经常看到 onClick={handleClick}onMouseEnter={handleMouseEnter} 等。

传递一个函数(正确)

调用一个函数(错误)

<button onClick={() => alert('...')}>

<button onClick={alert('...')}>

如果按如下方式传递内联代码,并不会在点击时触发,而是会在每次组件渲染时触发:

// 这个 alert 在组件渲染时触发,而不是点击时触发!
<button onClick={alert('你点击了我!')}>

如果你想要定义内联事件处理函数,请将其包装在匿名函数中,如下所示:

<button onClick={() => alert('你点击了我!')}>

参数传参:

1、箭头函数中执行

function handeClick(data){
  alert(data)
}
<button onClick={()=>handeClick('点我')}> 点我 </butotn>

箭头函数,都会创建一个新的函数实例,因此容易引起性能问题。但是在大多数情况下,性能影响并不显著。

2、推荐写法:bind方法

在这种情况下,我们使用 Function.prototype.bind 方法来绑定 handleClick 函数的上下文为 null,并传递参数 param

function handeClick(data){
  alert(data)
}
<button onClick={handeClick.bind(null,'点我 ')}>点我</button>

3、错误写法

以下代码中handleClick 会在渲染时立即执行

<button onClick={handeClick('韩庆元')>点我</button>

这种行为与 React 的事件处理机制不一致。

在 React 中,事件处理函数应该是一个函数引用,而不是一个函数的调用结果。当你使用 button onClick={handeClick('韩庆元')} 这样的方式时,实际上会立即执行 handeClick('韩庆元') 函数,并将其返回值作为事件处理函数,而不是绑定函数本身。

相关文章
|
6月前
|
前端开发 API UED
怎么学习React 18 进行项目开发?
【4月更文挑战第18天】学习React 18涉及新特性如并发模式、Suspense API和自动批处理更新,可提升性能和用户体验。首先了解这些新特性,然后掌握React基础知识,如组件化、JSX、props和state。使用Create React App创建项目,学习如何启用并发模式和使用Suspense显示占位符。实现自定义组件,关注props传递、状态管理和事件处理。通过Profiler优化性能,利用懒加载和代码分割减少加载时间,使用Context API共享状态。不断实践和探索,参考官方文档与社区资源,以提高开发技能。
160 3
|
1月前
|
前端开发 JavaScript API
React开发需要了解的10个库
本文首发于微信公众号“前端徐徐”,介绍了React及其常用库。React是由Meta开发的JavaScript库,用于构建动态用户界面,广泛应用于Facebook、Instagram等知名网站。文章详细讲解了Axios、Formik、React Helmet、React-Redux、React Router DOM、Dotenv、ESLint、Storybook、Framer Motion和React Bootstrap等库的使用方法和应用场景,帮助开发者提升开发效率和代码质量。
114 4
React开发需要了解的10个库
|
4月前
|
前端开发 JavaScript 安全
TypeScript在React Hooks中的应用:提升React开发的类型安全与可维护性
【7月更文挑战第17天】TypeScript在React Hooks中的应用极大地提升了React应用的类型安全性和可维护性。通过为状态、依赖项和自定义Hooks指定明确的类型,开发者可以编写更加健壮、易于理解和维护的代码。随着React和TypeScript的不断发展,结合两者的优势将成为构建现代Web应用的标准做法。
|
9天前
|
存储 前端开发 JavaScript
react之jsx编译原理
react之jsx编译原理
|
3月前
|
JavaScript 前端开发 安全
[译] 使用 TypeScript 开发 React Hooks
[译] 使用 TypeScript 开发 React Hooks
|
4月前
|
JavaScript 前端开发 IDE
React 项目中有效地使用 TypeScript
React 项目中有效地使用 TypeScript
|
11月前
|
存储 前端开发 JavaScript
react typescript 开发
react typescript 开发
63 0
|
前端开发 JavaScript
深入理解React Hooks与闭包:提升你的React开发技能
深入理解React Hooks与闭包:提升你的React开发技能
204 0
|
存储 JSON 前端开发
React系列教程(2)React哲学
React系列教程(2)React哲学
92 0
|
缓存 前端开发 JavaScript
探索 React Hook:提升 React 开发效率的核心知识点
在现代 Web 开发中,除了Vue,angle,React 已成为最受欢迎和广泛使用的前端框架之一。而在 React 16.8 版本中,引入了一项重大的改进——React Hook。React Hook 是一种让函数组件具备状态管理和其他特性的新方式,它彻底改变了我们编写和组织 React 组件的方式。本文将深入探讨 React Hook 的核心知识点,帮助您更好地理解和应用这项强大的技术。