错误在条件表达式no-unneeded-ternary中不必要地使用布尔文字

时间:2017-03-09 21:38:58

标签: javascript angularjs atom-editor ternary-operator eslint

我正在使用code

atom中尝试此ESLint

代码段:

$scope.IsVisible = false;
$scope.ShowHide = function () {
  $scope.IsVisible = $scope.IsVisible ? false : true; // error
};

出现此ESLint错误: 错误在条件表达式no-unneeded-ternary

中不必要地使用布尔文字

尝试使用这些解决方案solution 1solution 2,但错误并未修复。此外,code在没有ESLint的编辑器中工作正常。

2 个答案:

答案 0 :(得分:7)

尝试好方法=)。在这种情况下无需使用语句。

$scope.IsVisible = !$scope.IsVisible;

答案 1 :(得分:0)

就我而言,我想根据一个对象或 null 的变量为我的布尔值分配一个值。

kylesimmonds 所述,可以使用双 bang !! 运算符。

const myObject: SomeObjectType | null;
...

const isObjectExistent: boolean = !!myObject;
/*
  instead of:
  const isObjectExistent: boolean = myObject? true : false;
*/

检查:What is the !! (not not) operator in JavaScript?