ReactJS:如何传递字符串用作函数名称?

问题描述 投票:0回答:2

我正在使用React构建菜单。如何将字符串传递给组件以将其用作函数名称?

正在做什么:

<Link to={ROOM({ roomId })}>home</Link>

我现在正在重构组件。我有一个MobileMenu组件,其Link定义为:

  <MobileMenuLink service={'ROOM'} />

在第二个组件中,我将MobileMenuLink定义为:

const MobileMenuLink = ({ style, className, roomId, service }) => {
  return (
    <Base style={style} className={className}>
      <MenuLink>
        <Link to={service({ roomId })}>home</Link>
      </MenuLink>
    </Base>
  )
}

这怎么可能?

javascript reactjs components styled-components
2个回答
1
投票

不传递字符串,将ROOM函数传递给MobileMenuLink

<MobileMenuLink service={ROOM} />

并像现在一样调用service,因为它是一个函数:

<Link to={service({ roomId })}>home</Link>

-1
投票
window["functionName"](arguments);
© www.soinside.com 2019 - 2024. All rights reserved.