使用 ESLint 围绕箭头主体的意外块语句

Unexpected block statement surrounding arrow body with ESLint

以下代码在控制台中有此警告:

箭头主体周围出现意外的块语句;在 =` arrow-body-style

之后立即移动返回值
 blobToDataURL = blob => {
    return new Promise((resolve, reject) => {
      const reader = new FileReader();
      reader.onerror = reject;
      reader.onload = e => resolve(reader.result);
      reader.readAsDataURL(blob);
    });
  };

这是什么意思?

箭头函数可以采用以下两种形式之一:

() => return_value;

() => {
    something;
    something;
    return return_value;
};

您收到的警告是您使用的是第二种格式,即使您只有一个要返回的语句,所以您可以使用第一种格式。

它要你使用 implicit return :

blobToDataURL = blob => 
     new Promise((resolve, reject) => {
      const reader = new FileReader();
      reader.onerror = reject;
      reader.onload = e => resolve(reader.result);
      reader.readAsDataURL(blob);
    });