在你瓦解之前,这8种做法会让React应用措施先瓦解
在已往有前提地渲染组件的黄金时期,有人曾做过一件事,那就是搜查数据是否行使Object.keys添补到工具中。假若稀有据,那么假如前提通过,组件将继承渲染。 假设挪用了某个API,并在相应的某个处所吸取了作为工具的项。话虽云云,乍一看好像完全没有题目。项目标预期范例是工具,以是用Object.keys完全没题目。事实,假如呈现错误并转化为falsey值,简直可以通过把项初始化为空工具来举办防止。 但处事器不老是返回沟通的布局。假如未来项酿成数组会奈何?Object.keys(items)不会瓦解,但会返回一个稀疏的输出,好比[“0”、“1”、“2”]。被该数据渲染的组件该怎样回响呢? 但这还不是最糟的部门。代码片断中最糟的是,假如属性里收到的项是空值,那么项乃至不会初始化为默认值。 那么在开始行使应用措施前,就瓦解了: 再说一遍,请警惕点! 4. 在渲染前粗心地搜查数组是否存在 这也许和第3条的环境很是相似,可是数组和工具常常可以交流行使,以是应该单列出来。 假如你有这样做的风俗: 那么至少确保有单位测试,始终亲近存眷这段代码,可能在转达给渲染函数前赶早正确地处理赏罚arr,不然假如arr酿成工具笔墨,应用措施就会瓦解。虽然, &&操纵符会以为它是真实的,并实行.map工具笔墨,这最终导致整个应用措施的瓦解。 以是请紧记于心。节减你的精神以及挫败感,把它留给更值得你出格存眷的大题目吧! 5. 没有行使Linter 假如在开拓应用措施时,没有行使任何范例的linter,可能基础不知道它们是什么,你必需知道为什么它们在开拓中很有效。 用来帮助开拓流程的linter是ESLint(https://eslint.org/?source=post_page---------------------------),这是一个闻名的JavaScript的linting器材,它应承开拓职员在不执行代码的环境下发明题目。 这个器材很是有效,它就像半个导师一样,实时更正错误——就仿佛有人在指导你一样。它乃至描写了为什么你的代码也许是错误的,并提议你应该做什么。 这里有一个例子: 关于ESLint最酷的是,假如不喜好某些法则或是差异意个中的一些法则,可以禁用这些法则,这样它们就不会在开拓时表现为 linting告诫/错误了。 6. 在渲染列表时举办解构 已往有些人呈现过这种环境,并且很难检测到裂痕。根基上,假若有一个项目列表,而且筹备渲染每个项目标一堆组件,假如列表中有一个项目不是等候值,那么应用措施会呈现裂痕。假如应用措施不知道如那里理赏罚值范例,就有也许会瓦解。 这里有一个例子: 代码可以乐成地运行。来看看API挪用,而不是返回这个—— ——假如在API客户端呈现了不测环境而且返回这个数组时,怎样办理这个题目呢? 那么应用措施就会瓦解,由于它不知道如那里理赏罚:
(编辑:湖南网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |