...参与我的影响力组件

时间:2016-12-27 00:27:24

标签: reactjs components react-router

尝试在我的代码库中创建一个Nav组件“... params”会导致“意外令牌”错误:

render() {
  const {router} = this.context;
  const {
    index,
    onlyActiveOnIndex,
    to,
    children,
    ...params
  } = this.props;
  const isActive = router.isActive(to, onlyActiveOnIndex);
  const LinkComponent = index
    ? Link
    : IndexLink;
  return (
    <li className={isActive
      ? 'active'
      : ''}>
      <LinkComponent {...params}>{children}</LinkComponent>
    </li>
  );
}

显示错误:

   ./src/components/common/NavItem.js中的错误   模块构建失败:SyntaxError:   C:/Development/varAssignPages/src/components/common/NavItem.js:   意外的令牌(16:6)

1 个答案:

答案 0 :(得分:1)

您可以在JSX标记内部使用spread,但在创建const时无需使用它。试试这个:

const {
    index,
    onlyActiveOnIndex,
    to,
    children,
    params
  } = this.props;

// ...

<LinkComponent {...params}>{children}</LinkComponent>