2017-01-14 4 views
0

ではありません、私は私のサーバーコードいくつかの_.attemptは()のtry/catchが

let target = (_.attempt(fs.statSync("path")));
をクリーンアップするために)(「lodashでのtry catchブロックを交換_.attemptを試してみたエラーを返しますtry/catch当量が、私は_.attemptを(使用している場合、私は、同様に非同期版で試してみた

ないとき

)がエラーを返す誤っそれは、私には明らかではないが、提案?

答えて

3

Lodashの_.attempt()は第二としての機能は、第一パラメータとして起動することを期待し、関数の引数:

let target = _.attempt(function(path) { 
    fs.statSync(path); 
}, "path"); 

または短縮バージョンjmmygoggle's commentをINGの提案:

let target = _.attempt(fs.statSync, "path"); 

の代わりに呼び出すメソッドは、fs.statSync("path")の結果を渡しました。これは、_.attempt()が処理できないというエラーをスローします。

+0

説明の後でドキュメントを振り返ってみると、それは非常に明白です。 –

+0

より簡単に元ののと同じようになります: 'let target = _.attempt(fs.statSync、" path ");' – jmmygoggle

+0

@jmmygoggle - ありがとう。答えに追加されました。 –

関連する問題