在Next.js中,您可以在您的React組件中使用綁定到第一次加載時的服務器端渲染的生命週期方法。Next.js React組件getInitialProps不綁定道具
我試圖使用the ZEIT tutorial(或on their Github)中介紹的此函數,但this.props似乎並沒有得到該函數返回的JSON。 當我點擊組件時,控制檯打印一個空的對象。
import React from 'react'
import 'isomorphic-fetch'
export default class extends React.Component {
static async getInitialProps() {
const res = await fetch('https://en.wikipedia.org/w/api.php?action=query&titles=Main%20Page&prop=revisions&rvprop=content&format=json')
const data = await res.json()
return { data }
}
print() {
console.log(this.props);
}
render() {
return <div onClick={this.print.bind(this)}>print props</div>
}
}
你必須在/ pages組件中得到它。否則getInitialProps不會被調用。你是定義一個頁面還是一個組件? – elmasse