2017-09-11 1 views
0

私は複数の関数を呼び出しています(約束しています)..返されます..コードは完全にうまくいきますが、ESlintエラーフリーコードが必要です。このため、エラー以下..ESlintエラーJS:矢印ボディを囲む予期しないブロックステートメント

周囲の矢印本体の矢印ボディスタイルは

は、あなたがこの上でアドバイスしてください可能性があり

予期しないブロック文...

this.test1 = function() { 
return this.test2().then((val1) => { 
    return this.test3().then((val2) => { 
     return this.test4().then((values) => { 
      const nameValues = []; 
      for (let i = 0; i < values; i += 1) { 
       if (i === 0) { 
        for (let j = 0; j < val1; j += 1) { 
         //some code 
        } 
       } else if (i === 1) { 
        for (let k = 0; k < val2; k += 1) { 
         //some code 
        } 
       } 
      } 
      return //some value; 
     }); 
    }); 
}); 

};

+0

を試してみてください。 – Keith

+0

それは、それが参照している行について何らかの指示もしていませんか? –

答えて

1

あなたの関数の本文には{}またはreturnのキーワード(以下に示す)なしで通常表示されるreturn文だけがあるため、あなたの矢印関数から{}を削除する必要があります。

this.test2().then((val1) => 
this.test3().then((val2) => 
this.test4().then((values) => { const nameValues = []; /* ... */ } 
+0

はい私のlintエラーはなくなりましたが、私のスクリプトのような他の問題は "未定義の" then ...で失敗していました.. – Jagath

+0

関数呼び出しの後に '.then()'を追加すると、その関数約束を返します。例えばここで 'this.test3()'が '[1,2,3]'を返した場合は 'then'を呼び出すことはできませんでしたが、' return Promise.resolve([1,2,3])はOKです – user2520818

0

私は離れて `割り当てnameValues`が、使ったことがないから、任意のEsLintエラーが届かないこのeslint構成

"arrow-body-style": ["error", "as-needed"] 
関連する問題