Javascript 数组键中的Object.entries

Javascript 数组键中的Object.entries,javascript,Javascript,我试图在组件中显示路由器名称,具体取决于路径名。我下面的代码工作正常,但我不喜欢在代码中执行route[1]。这很难辨认,我不知道是否可以写得更好 routes.js: export default { login: { name: <FormattedMessage {...loginMessages.login} />, path: '/login', }, register: { name: <FormattedMessage {...

我试图在组件中显示路由器名称,具体取决于路径名。我下面的代码工作正常,但我不喜欢在代码中执行
route[1]
。这很难辨认,我不知道是否可以写得更好

routes.js:

export default {
  login: {
    name: <FormattedMessage {...loginMessages.login} />,
    path: '/login',
  },
  register: {
    name: <FormattedMessage {...registerMessages.registration} />,
    path: '/register',
  },
  dashboard: {
    name: <FormattedMessage {...dashboardMessages.dashboard} />,
    path: '/dashboard',
  },
};
导出默认值{
登录:{
姓名:,
路径:'/login',
},
登记册:{
姓名:,
路径:“/寄存器”,
},
仪表板:{
姓名:,
路径:'/dashboard',
},
};
组成部分:

   import { routes } from 'utils'; 
   ...
   {Object.entries(routes).map(
        (route) =>
          route[1].path === pathname && (
            <div key={route[1].path}>{route[1].name}</div>
          ),
      )}
   ...
从“utils”导入{routes};
...
{Object.entries(routes.map)(
(路线)=>
路由[1]。路径===路径名&&(
{路由[1]。名称}
),
)}
...

将组件重写为:

import { routes } from 'utils'; 

   ...
   {Object.values(routes).map(
        (route,index) =>
          index == 1 &&         //whatever index you want
          route.path === pathname && (
            <div key={route.path}>{route.name}</div>
          ),
      )}
   ...
从“utils”导入{routes};
...
{Object.values(routes.map)(
(路线、索引)=>
index==1&&//
route.path==路径名&&(
{route.name}
),
)}
...

将组件重写为:

import { routes } from 'utils'; 

   ...
   {Object.values(routes).map(
        (route,index) =>
          index == 1 &&         //whatever index you want
          route.path === pathname && (
            <div key={route.path}>{route.name}</div>
          ),
      )}
   ...
从“utils”导入{routes};
...
{Object.values(routes.map)(
(路线、索引)=>
index==1&&//
route.path==路径名&&(
{route.name}
),
)}
...

(route)=>
更改为
({1:route})=>
,然后
route.path
或者更确切地说
Object.entries
使用
Object.values
如果routes是一个数组,为什么不
routes.map
?@AZ_uuu>或者
([,route=>
)查看它是一个数组。虽然我不确定OP是否在这里使用
.values
,如果不需要键的话。@VLAZ,是的,这也可以完成任务。:)将
(route)=>
更改为
({1:route})=>
,然后
route.path
或者更确切地说
Object.entries
使用
Object.value
如果routes是一个数组,为什么不
routes.map
或者
([,route])=>
查看它是一个数组。虽然我不确定OP是否在这里使用
.values
,如果不需要键的话。@VLAZ,是的,这也可以完成任务。:)