ESLintがJSモジュール内でこのエラーメッセージを通知しています:error no-unneeded-ternaryデフォルトの割り当てに条件式を不必要に使用しています
エラーはget
ステートメントのreturn
メソッドで発生しますreturn val ? val : defaultVal;
?
import ls from 'local-storage';
export default {
get(key, defaultVal = null) {
var val = ls(key);
return val ? val : defaultVal;
},
set(key, val) {
return ls(key, val);
},
remove(key) {
return ls.remove(key);
},
};
なぜこのエラーメッセージが出るのですか? ESLintのWebサイトで、このエラーメッセージに関するリソースを見つけました here がブール式に適用され、コードに適用される理由がわかりません...
単純なval || defaultVal
で十分な場合は、3項は必要ありません。
// Bad
foo(bar ? bar : 1);
// Good
foo(bar || 1);
これは、エスリントで彼らが言う方法です