【发布时间】:2019-04-19 10:14:54
【问题描述】:
我的 React.js 应用程序中有一个组件,使用 Next.js - 这个组件是 Header 我在布局中使用它来获取每个标题元素。
我想做的是在其中获取一个 API 请求,这样我就可以在标题中呈现菜单项。API 正在返回菜单对象。
这是我的代码。
import fetch from 'isomorphic-unfetch'
import React, { Component } from "react";
import Link from 'next/link';
import { Config } from "../config.js";
class Header extends Component {
static async getInitialProps() {
const menuRes = await fetch(
`${Config.apiUrl}/wp-json/menus/v1/menus/header-menu`
);
const menu = await postsRes.json();
return {menu}
}
render() {
console.log(this.props);
return (
<div>
213
</div>
);
}
}
export default Header
我还在学习反应,所以如果我在这方面 100% 错了,请原谅。只是道具没有返回任何东西:
this.props
我在网上找不到任何人谈论这个,否则我会很高兴地读到它。显然这适用于 page.js 并返回我的所有项目。
static async getInitialProps(context) {
const { id } = context.query
const postsRes = await fetch(
`${Config.apiUrl}/wp-json/wp/v2/pages?slug=sample-page`
);
const posts = await postsRes.json();
return {posts}
}
但我不知道为什么它不能在组件内部工作:(
【问题讨论】:
标签: javascript reactjs next.js