今天,我们决定在工作中只使用箭头函数。
我们有一个通用的 ESLint 配置,并且团队投票决定在所有项目中统一此规则。
老实说,我不喜欢这个特殊规则
个人而言...函数声明感觉更具表现力,至少对于顶级符号:
some-screen-of-my-app.tsx
import {} ... export function SomeScreen(props: Props) { const { myContext } = useMyContext() const [state, setState] = useState() const doSomething = () => { ... } const handleSomething = () => { ... } return ...> } function SomeInternalComponent() { ... }
这就是我习惯编写组件的方式:声明一个函数感觉就像小说中的章节标题。
function Chapter3(storySoFar: Props) { // where the Hero meets the Villain }
但我确实理解团队的需求:根据模块的原始作者,我们可能会在第一级找到 const () =>; {} 或函数。
主要论点是“箭头函数更具可读性”(我不同意)
import {} ... const SomeInternalComponent = () => { ... } export const SomeScreen = (props: Props) => { const { myContext } = useMyContext() const [state, setState] = useState() const doSomething = () => { ... } const handleSomething = () => { ... } return ...> }
我试图找到一些技术优势来支持我的偏好...一些书呆子*pitimini* [一些小或微不足道的东西]移动了我的利益的平衡,但因为我们所有人都同意以下内容:
- 没有类(只有函数)
- 没有全局的东西(现代模块)
- 没有这个
两者之间没有显着差异。
深入细节:
const foo = () =>; { ... }
- 禁止吊装
- 函数的名称源自变量的名称(“foo”)
- 以后不能像 foo=... 一样被覆盖
- 不创建原型对象 foo.prototype
- 不能用作构造函数 new foo()
- 没有参数
- 该值由 声明函数的位置 定义
函数 foo() { ... }
- 吊装
- 函数名称是obv。
- 可以像 foo = ... 一样被覆盖
- 创建对象原型 foo.prototype
- new 是允许的,例如: new foo() (它将链接原型)
- 该值由如何调用函数 定义
最终,我更喜欢顶级组件的卓越的清晰度功能,但多数人的意志占上风。
开玩笑,我会适应的。拥有统一的风格将有助于维护有凝聚力的代码库。
???.
感谢您的阅读
以上是为什么我更喜欢顶级符号的function声明(但不会再使用它们)的详细内容。更多信息请关注PHP中文网其他相关文章!

JavaScript字符串替换方法详解及常见问题解答 本文将探讨两种在JavaScript中替换字符串字符的方法:在JavaScript代码内部替换和在网页HTML内部替换。 在JavaScript代码内部替换字符串 最直接的方法是使用replace()方法: str = str.replace("find","replace"); 该方法仅替换第一个匹配项。要替换所有匹配项,需使用正则表达式并添加全局标志g: str = str.replace(/fi

本教程向您展示了如何将自定义的Google搜索API集成到您的博客或网站中,提供了比标准WordPress主题搜索功能更精致的搜索体验。 令人惊讶的是简单!您将能够将搜索限制为Y

利用轻松的网页布局:8个基本插件 jQuery大大简化了网页布局。 本文重点介绍了简化该过程的八个功能强大的JQuery插件,对于手动网站创建特别有用

因此,在这里,您准备好了解所有称为Ajax的东西。但是,到底是什么? AJAX一词是指用于创建动态,交互式Web内容的一系列宽松的技术。 Ajax一词,最初由Jesse J创造

核心要点 JavaScript 中的 this 通常指代“拥有”该方法的对象,但具体取决于函数的调用方式。 没有当前对象时,this 指代全局对象。在 Web 浏览器中,它由 window 表示。 调用函数时,this 保持全局对象;但调用对象构造函数或其任何方法时,this 指代对象的实例。 可以使用 call()、apply() 和 bind() 等方法更改 this 的上下文。这些方法使用给定的 this 值和参数调用函数。 JavaScript 是一门优秀的编程语言。几年前,这句话可

jQuery是一个很棒的JavaScript框架。但是,与任何图书馆一样,有时有必要在引擎盖下发现发生了什么。也许是因为您正在追踪一个错误,或者只是对jQuery如何实现特定UI感到好奇

该帖子编写了有用的作弊表,参考指南,快速食谱以及用于Android,BlackBerry和iPhone应用程序开发的代码片段。 没有开发人员应该没有他们! 触摸手势参考指南(PDF) Desig的宝贵资源


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

Atom编辑器mac版下载
最流行的的开源编辑器

Dreamweaver CS6
视觉化网页开发工具

安全考试浏览器
Safe Exam Browser是一个安全的浏览器环境,用于安全地进行在线考试。该软件将任何计算机变成一个安全的工作站。它控制对任何实用工具的访问,并防止学生使用未经授权的资源。

螳螂BT
Mantis是一个易于部署的基于Web的缺陷跟踪工具,用于帮助产品缺陷跟踪。它需要PHP、MySQL和一个Web服务器。请查看我们的演示和托管服务。

禅工作室 13.0.1
功能强大的PHP集成开发环境