【发布时间】:2019-06-19 12:56:42
【问题描述】:
通过使用NextJS,我遇到了静态导出命令next build && next export 的问题。
我添加了 HOC - Layout.js 以使用导航栏和页脚包装页面。
我也有浅页 /pages/*.js 和嵌套页 /pages/products/*.js。
我的问题是导航栏和页脚中的图像仅加载在浅页上,但导航到 /pages/products/test.js 会破坏图像并且它们不会显示。
这仅在导出和提供静态 HTML 时发生。在使用npm run dev 开发时,所有图像均已正确加载。
components/Layout.js
const withLayout = Content => {
return () => (
<Container>
<Navbar active={Content.displayName} />
<Content />
<Footer />
</Container>
);
};
export default withLayout;
pages/index.js
// IMAGES WILL LOAD HERE (i.e. Logo in Navbar)
const Home = () => {
render() {
return (
<p>Test</p>
);
}
}
Home.displayName = "Home";
export default withLayout(Home);
pages/products/test.js
// IMAGES SET IN Layout.js WILL NOT BE LOADED
// test.jpg WILL BE LOADED
const Test = () => {
render() {
return (
<img src={"../../static/test.jpg"} />
);
}
}
Home.displayName = "Home";
export default withLayout(Test);
【问题讨论】:
标签: javascript reactjs next.js