这是什么
这是第二个测试任务的解决方案的代码审查。 该视频显示了成功的解决方案和错误,以及修复它们的技巧。 本说明指出了常见问题,并提供了带有“时间戳记”的链接。

常见问题
- 错误的自述文件;
- 有附加警告,额外的
console.log
(redux-logger不计算在内); - Web图标未向前移动(不专心地阅读任务);
- Web图标在组件中被向前推动(在reducer或action中会更好);
- 如果请求返回错误,密码将不被清除;
- 如果字段为空(或字段之一),则登录表单中的提交按钮可用。
- 登录表单中的“提交”按钮不支持按Enter键;
- 没有划分成组件/容器(不适用于其他方法共享的组件);
- 发送给服务器的请求的URL已完全传输(没有将字符串的重复部分注册为常量);
- 错误/通知“用户名/密码不正确”-未清除;
- 错误“不正确的用户名/密码”-由服务器常量输出;
- 错误文本被硬编码在代码中。 服务器无法通过常量访问字典;
- 尚未删除“旧代码”,即未在任何地方使用的代码;
- 承诺没有catch块,如果服务器回答不正确,则没有错误处理;
- 组件托管在node_modules中;
- 道具类型丢失或描述不足。
- 一个文件中堆上的操作和减速器(或者一个文件中所有动作,另一个文件中所有减速器)。 没有对“模块”的划分,即每个实体-自己的行为和它的化简。
所有带有时间戳的解决方案
这里只指出错误, 没有指出要点,但其中有很多,所以我强烈建议连续观看所有内容,以对那些认为自己在开发中处于“六月”反应的人们。
6时-Arthur Donkovtsev 提交
7分40秒 -函数名称中的错字
8分07秒 -异步请求未付诸实施
9分30秒-Pavel Pimkin 提交
10分07秒 -所有动作均在一个文件中。 没有划分模块。
10分25秒 -在组件中删除图标(数据枚举)。 在减速器或动作上更好。
11分42秒谢尔盖ZackFox 提交
12分28秒 -“酷”字样。 最好“中立”地进行,这样类似的任务就可以立即发送给雇主。
13分05秒 -一项额外的操作,指示“下载”已完成。 也就是说,您可以遇到两个动作:REQUEST / SUCCESS,而不是三个动作:REQUEST / SUCCESS / STOP。
16分16秒-Dmitry Petrov Commit
18分16秒 -使用var
18分34秒 -部分网址不固定
21分15秒-Yefim面包提交
21分17秒 -错误的提交消息
22m15是相同的动作名称。
24分16秒-Katsura Vladislav Commit
25分17秒 -(不是错误)-在化简器中准备的数据
27分38秒 -使用e.target
,更好的e.currentTarget
28m20s - ==
,但有必要===
28分33秒 -使用componentWillUnmount
29m00s (不是错误)-关于“服务器验证之前”的原因。
30m05s-代码未格式化(对于业余用户)
30分33秒-Maxim Safin Commit
31分35秒 - 酌情使用“非通用”处理程序。
32分 02秒-Sergey Regins Linkas 提交
33分42秒 -预加载器不执行任何操作
34分30秒 -组件中方法的顺序。 ( eslint插件 )
35分30秒 -不存在的道具类型
35分57秒-Kononov Vitaly Commit
38分 02秒-Renat Rysaev Commit
39分45秒 -不做不有趣的事情
40分 31秒-Evgeny Sanzhiev Commit
41m20s (不是错误)-处理错误的字典
42分46秒 -重要路堤提交
42分54秒 -测试数据未清除
44分 50秒-Veniamin Trepachko Commit
成就:非常酷的设计。
47分42秒-Redux版本不完整。
47分57秒 -Ingvarr6(Igor) 提交
48分21秒 -没有404条路线
51分20秒-Catherine H Commit
51分30秒 -无法清除错误
54分48秒 -罗马巴勒斯坦承诺
55分30秒 -下载动作不足/错误
56分49秒 -在减速器中使用副作用
58分10秒 -(不是错误)使用CSS 移除网页图标(生病了!)
58分 53秒-Umyar Yusupov 提交
59分15秒 -在setState中使用回调,这会导致不必要的重画 。 最好直接在渲染中进行验证。
61m01s-如果else不当使用
62m13s -dsfcv d(Boortcore) 提交
63分15秒 Konstantin Lipsky Commit
65分11秒 -整个URL都会传递给操作,最好在此选项中传递ID。
67分 14秒-Ikaow Ikaow 提交
67m50s在shouldComponentUpdate中是一个困难的情况,它可以更简单(立即检查props.data就是这样)
69分32秒 e.preventDefault
不是处理程序中的第一个
70m01s -Ali Gasymov Commit
71分 50秒-Akhmetanov Albert Commit
72m20s - node_modules中的组件
73分15秒 -重复的变量调用
74分04秒 -尤金·怀特(Eugene White Commit)
76m04s -privateRoute没有移动到单独的组件
76m33s-用于移动Web图标的复杂代码
76m56s- 加载冗余属性
77分 35秒-Aladyin Alexander Commit
80m33s-词典中未出现错误
81分19秒-Misha Mihail 提交
81分43秒 -与路由器冗余使用
83m04s -Dmitrii Shapovalenko 提交
84分-Daniel Commit
84分58秒 -冗余行动师
85m55s-生命周期方法名称错误
86分 58秒-Poroshin Roman Commit
87分15秒 - article
标记在语义上的错误使用
90分46秒 -对数组方法的额外调用
91分 10秒-Artem Bochkov Commit