Switch Case 语句中的错误重复 Const 声明

新手上路,请多包涵

我有以下代码,但收到错误“重复声明 query_url”。

   switch(condition) {
    case 'complex':
      const query_url = `something`;
      break;
    default:
      const query_url = `something`;
      break;
  }

我知道 query_url 被声明了两次,这是不对的。但我不知道如何解决这个问题。有人可以帮助解决这项工作的正确方法吗?

原文由 asanas 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.1k
2 个回答

如果您需要在每种情况下重新声明相同的变量,请参阅 下面的@Bergi 的回答

如果 query_url 可以有多个值,具体取决于开关分支显然你需要一个变量(用 varlet 声明)。

const 设置一次并保持这种状态。

let 的用法示例

let query_url = '';
switch(condition) {
  case 'complex':
    query_url = `something`;
    break;
  default:
    query_url = `something`;
    break;
}

原文由 eltonkamami 发布,翻译遵循 CC BY-SA 4.0 许可协议

尝试将案例包装成块:

 switch(condition) {
  case 'complex': {
    const query_url = `something`;
    … // do something
    break;
  }
  default: {
    const query_url = `something`;
    … // do something else
    break;
  }
}

原文由 Bergi 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题