Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/32.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如果else未能正确分支,则始终遵循第一条路径_Javascript_Angular_If Statement - Fatal编程技术网

Javascript 如果else未能正确分支,则始终遵循第一条路径

Javascript 如果else未能正确分支,则始终遵循第一条路径,javascript,angular,if-statement,Javascript,Angular,If Statement,我在网站上有一个选择框,我想通过这个选择框结果改变另一个值 var item = vm.complaintData.item if (item == 'test') { var another = "done!"; } else if (item == 'test1') { var another = 'not doneé'; } 当我在console.log上检查项时,它工作正常。 但如果其他条件不起作用,总是得到第一个条件的结果。 有什么问题?可能是var关键

我在网站上有一个选择框,我想通过这个选择框结果改变另一个值

 var item = vm.complaintData.item
  if (item == 'test') {
    var another = "done!";
  } else if (item == 'test1') {
    var another = 'not doneé';
  }
当我在console.log上检查
项时,它工作正常。
但如果其他条件不起作用,总是得到第一个条件的结果。

有什么问题?

可能是
var
关键字有问题。试试这个:

 let item = vm.complaintData.item
 let another = '';
 if (item === 'test') {
    another = "done!";
 } else if (item === 'test1') {
    another = 'not done';
 }

“不工作”是什么意思?这是怎么回事?为什么要创建这样的变量?“不工作”意味着“总是得到第一个条件结果”我应该怎么做?你确定
不总是
的“测试”
值吗?这是执行第一个分支的唯一方法。和往常一样,若你们真的感到困惑,就设置一个断点。我敢肯定,这个项目正在改变。我在控制台上看到它。如果这里的代码实际正在执行,logIt不会进入第一个分支,除非它设置为
'test'
。你可以尝试使用
开关
,甚至出于大量的偏执狂而使用
=