路由和导入页面

在 Next.js 中导入联合页面需要在 next 构建的工作方式的约束内操作。

导入远程页面

Next 依赖于静态分析来确定如何构建或渲染页面。

由于模块联邦是在运行时的,因此 next 在构建时无法看到远程页面包含哪些导出。

这要求你在宿主内重新导出页面远程的页面 API / 数据生命周期。

Sample Remote App

remote/pages/index.js
remote/pages/other.js
remote/pages/_app.js
import React from 'react'; import Head from 'next/head';  const Shop = (props) => {  return (  <div>  <Head>  <title>Shop</title>  </Head>  <pre>{JSON.stringify(props)}</pre>  </div>  ); }; Shop.getInitialProps = async () => {  const fallback = {  name: 'Luke Skywalker',  height: '172',  mass: '77',  hair_color: 'blond'  };  return Promise.resolve(fallback); };  export default Shop; 

Sample Host App

host/pages/index.js
host/pages/other.js
host/pages/_app.js
import Shop from 'remote/pages/index'; const Page = Shop; Page.getInitialProps = Shop.getInitialProps; export default Page;