未定义对象数组中的“ this”值

时间:2020-08-04 14:05:46

标签: javascript reactjs

我有很多路线。每个路由都是它自己的对象,需要迭代定义。我希望能够使用'this'关键字在main()中使用标题键,但是它是未定义的。我在这里想念什么?

const loggedInRoutes = [
  {
    path: '/home',
    exact: true,
    isPrivate: true,
    header: 'Home',
    main() {
      console.log(this); // undefined
      return (
        <HeadWrap header={this.header}> // property 'header' undefined
          <Home />
        </HeadWrap>
      );
    },
  },
]

1 个答案:

答案 0 :(得分:0)

您不能这样做。试试这个解决方案

const homeHeader="Home"
const loggedInRoutes = [
  {
    path: '/home',
    exact: true,
    isPrivate: true,
    header: homeHeader,
    main() {
      return (
        <HeadWrap header={homeHeader}>
          <Home />
        </HeadWrap>
      );
    },
  },
]