У меня есть файл по этому пути ./pages/blog/[id]/[title].js
и вот коды, которые я написал:
import React from 'react';
import PropTypes from 'prop-types';
import fetch from 'isomorphic-unfetch';
import BASE_URL from '../../../BaseURL';
const BlogSinglePage = props => {
console.log(props.post);//undefined
console.log(props);//{}
return (
<div></div>
);
};
BlogSinglePage.propTypes = {
post: PropTypes.object
};
BlogSinglePage.getInitialProps = async ({ query }) => {
const res = await fetch(`${BASE_URL}/api/post/${query.id}`);
const post = await res.json();
return { post };
};
export default BlogSinglePage;
моя проблема в том, что getInitialProps
является асинхронной функцией, BlogSinglePage's
props пусто,но всякий раз, когда getInitialProps
не является асинхронной функцией, все работает, а реквизит не пуст.
Я следовал коду в Реализуем пост-страницу построчно, но у меня это не работает.