如何检查值是否与导入的类名相同

时间:2019-04-11 15:38:00

标签: javascript

当变量名与导入的类名相同时,导入的类中有一些数据可供使用。我不知道首先检查该值是否与导入的类名相同的最佳方法。

现在我的代码如下:

import { TEST, TEST2 } from '../shared/panel';

selectPanel(panel) {
  let test;
  if(panel === 'TEST'){
    test = TEST;
  }   
  else if(panel === 'TEST2'){
    test = TEST2;
  }
  else{
    test = '';
  }
}

有没有更短的方法或更好的方法?原因是当条件很多时会变得混乱。

2 个答案:

答案 0 :(得分:2)

您可以通过以下方式导入所有变量:

import * as panels from '../shared/panel';

现在您将拥有一个对象(panels),该对象具有您的变量名称作为键。

因此您可以执行以下操作:

const selectPanel = key => panels[key] || ""

答案 1 :(得分:0)

尝试

selectPanel(panel) {
  let test;
  if(window[panel]=="undefined"){
    test = '';
  }
  else{
  test = window[panel]
  }
}

我没有测试,但我认为它可以工作