首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在函数返回中使用条件开关

在函数返回中使用条件开关
EN

Stack Overflow用户
提问于 2021-07-15 04:51:03
回答 1查看 114关注 0票数 0

我正在尝试在React 17的最新版本中进行条件渲染,它没有呈现,只返回。

如何才能让这个开关语句正常工作?目前它没有从我的开关语句中返回任何内容。

代码语言:javascript
运行
复制
const Search = (props) => {

  let test = 'foo';
  return (
    <div>
      {function() {
        switch(test) {
         case 'foo':
          return 'foo12345';
         case 'bar':
          return 'bar67890';
         default:
          return 'aaaa';
         }
        }
      }      
    </div>
  )
}

在基于类的方法上使用函数。以后必须使用8-10条件开关语句,

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-07-15 04:52:34

现在,您只是声明一个函数,但从未执行它。最简单的调整是:

代码语言:javascript
运行
复制
return (
    <div>
        {
            (function () {
                switch (test) {
                    case 'foo':
                        return 'foo';
                    default:
                        return 'bar';
                }
            })()
        }
    </div>
)

但更好的办法是:

代码语言:javascript
运行
复制
return (
    <div>
        {
            test === 'foo' ? 'foo' : 'bar'
        }
    </div>
)

如果您有很多可能性,我会推荐一个对象或地图,它比switch更简洁、更容易出错。

代码语言:javascript
运行
复制
const obj = {
  foo: 'foo12345',
  bar: 'bar67890',
  // etc
};
代码语言:javascript
运行
复制
return (
    <div>
        {
            obj[test] || 'aaaa'
        }
    </div>
)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68388082

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档