nextjs 抱怨 read 属性 of undefined during build
nextjs complains about read property of undefined during build
我正在使用 Nextjs 创建评论组件以进行服务器端渲染。在开发模式下一切正常,但是当我尝试构建优化的产品时,下一个 js 抱怨
Cannot read property 'byname' of undefined
这是我的组件:
import React from 'react'
import moment from 'moment-timezone'
export default function Comment({comment}) {
return (
<div>
<div>
<span>{comment.byName}</span>
<span> {moment(new Date(comment.createdOn)).format('ll')}</span>
</div>
{comment.comment}
</div>
);
}
这是我在 package.json
中的脚本
"scripts": {
"dev": "next",
"build": "next build",
"start": "next start"
},
这是我得到的错误
> next build
info - Loaded env from /Users/aliemami/coco-project/coco/.env
Creating an optimized production build
Compiled successfully.
Automatically optimizing pages .
Error occurred prerendering page "/community/Comment". Read more: https://err.sh/next.js/prerender-error
TypeError: Cannot read property 'byname' of undefined,
我有点理解发生了什么,可能 Nexjs 正在尝试从中创建一个静态页面但由于传递给组件的变量而不能,我如何告诉 nextjs 在每次调用时创建组件?什么是最有效的解决方案? Next 如何在开发期间而非生产期间处理此问题?
OK,仔细看文档,pages文件夹下好像不能放components,得把page components全部移到文件夹外。
我正在使用 Nextjs 创建评论组件以进行服务器端渲染。在开发模式下一切正常,但是当我尝试构建优化的产品时,下一个 js 抱怨
Cannot read property 'byname' of undefined
这是我的组件:
import React from 'react'
import moment from 'moment-timezone'
export default function Comment({comment}) {
return (
<div>
<div>
<span>{comment.byName}</span>
<span> {moment(new Date(comment.createdOn)).format('ll')}</span>
</div>
{comment.comment}
</div>
);
}
这是我在 package.json
中的脚本"scripts": {
"dev": "next",
"build": "next build",
"start": "next start"
},
这是我得到的错误
> next build
info - Loaded env from /Users/aliemami/coco-project/coco/.env
Creating an optimized production build
Compiled successfully.
Automatically optimizing pages .
Error occurred prerendering page "/community/Comment". Read more: https://err.sh/next.js/prerender-error
TypeError: Cannot read property 'byname' of undefined,
我有点理解发生了什么,可能 Nexjs 正在尝试从中创建一个静态页面但由于传递给组件的变量而不能,我如何告诉 nextjs 在每次调用时创建组件?什么是最有效的解决方案? Next 如何在开发期间而非生产期间处理此问题?
OK,仔细看文档,pages文件夹下好像不能放components,得把page components全部移到文件夹外。