reactjs - React JS Unreachable 代码 no-unreachable

标签 reactjs

我正在学习 React.js。我大约 2 天前搜索了我的问题的解决方案,但我不知道问题是什么。

render() {
return (
  <div>
    {
      this.state.menus.map((item_main, index_main) => {
        return (<h1 key={item_main.main_name}>{item_main.main_name}</h1>);
           var subs = this.state.menus[index_main].subs.map((item_sub, index_sub) => {
             return(<h4 key={item_sub.sub_name}>{item_sub.sub_name}</h4>)
           })

       })
    }
  </div>
);

如果我将“return”替换为“console.log”,它在控制台中看起来不错,但在网络上不会出现。

最佳答案

代码中无法访问的方面部分来自这样一个事实,即一旦您 return ,那么它下面的行将不会执行。在这种情况下:

var subs = this.state.menus[index_main].subs.map((item_sub, index_sub) => {
  return(<h4 key={item_sub.sub_name}>{item_sub.sub_name}</h4>)
 })

永远不会与返回一起运行。这就是导致您的 no-unreachable 的原因要触发的 linter 错误。

从你的帖子来看,你想要的行为有点模棱两可,但我最好的猜测是你想要一个 <h1>对于每个项目,后跟 <h4>对于您的每个子菜单项。在这种情况下,您的代码应如下所示:

render() {
return (
  <div>
    {
      this.state.menus.map((item_main, index_main) => {
           var subs = this.state.menus[index_main].subs.map((item_sub, index_sub) => {
             return(<h4 key={item_sub.sub_name}>{item_sub.sub_name}</h4>)
           });
            return (
              <div>
                <h1 key={item_main.main_name}>{item_main.main_name}</h1>
                {subs}
              </div>
            );

       })
    }
  </div>
);

您还可以使用 <Fragment>作为外包装,但为了简单起见,我没有在此处包含它。

关于reactjs - React JS Unreachable 代码 no-unreachable,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50379302/

相关文章:

javascript - 在 React 中,如何根据传入的 props 动态渲染组件?

javascript - 防止动画向后显示(Animate.css - React.js)

.net - Azure AD 身份验证,为 React、.Net Core Web api 项目提供错误 Unauthorized_client

javascript - Push 不是一个函数,Redux

javascript - 使用 react-spring 按顺序呈现帖子列表

javascript - 未处理的拒绝(类型错误): Cannot read property of undefined using reactjs axios on google chrome mobile

javascript - 如何在渲染前清屏

reactjs - Expo React 警告 : Can't perform a React state update on an unmounted component. 这是一个空操作,但它表明您的应用程序中存在内存泄漏

javascript - Nodejs 未部署在 heroku 上 - node-pre-gyp install --fallback-to-build

reactjs - react native : Podfiles causing name collusions