Skip to content

Latest commit

 

History

History
70 lines (58 loc) · 1.29 KB

explain.md

File metadata and controls

70 lines (58 loc) · 1.29 KB
  • 钩子函数中只写调用,而不写具体逻辑代码
componentDidMount () {
    this.add(a, b);
}

add = (a, b) => {
    return a + b;
}
  • 在需要的地方使用请求,防止请求泛滥
// 遇到的例子
...
const res = await xxx();
if (isNotVip()) {
    ...
    return;
}
if (res) {
    ...doSomeThing
}
...

// 修改
...
if (isNotVip()) {
    ...
    return;
}
const res = await xxx();
if (res) {
    ...doSomeThing
}
...
  • 尽量不要使用默认导出

默认导出的第一个主要问题是命名。每次包含名称时,您都必须考虑名称导入。不仅如此,您在创建新函数时也不必想出一个好名字,因为它允许导出匿名值。

// cookies.js
export default () => {
  // baking 🍪 cookies logic
};

// app.js
import makeChocolateChipCookies from "./cookie.js";

你不知道你的默认导出函数是cookies.js做什么的。当然,您可以查看实现或依靠文档,但这肯定会增加更多的认知负担。您无法正确识别该功能应该做什么。

这迫使您考虑在要使用它的每个地方命名该功能。

  • 使用默认参数而不是条件判断
// bad
const createShape = (type) => {
    const shapeType = type || 'A';
    ...
}

// good
const createShape = (type = 'A') => {
    ...
}