【发布时间】:2023-01-31 18:28:51
【问题描述】:
我正在使用 Next.js 开发网站。
我想使用动态导入import() 来动态加载模块。它可能不存在。
如果它不存在,我可以压制它:
const Blog = async () => {
let Layout = <div>Fallback layout</div>
try {
const { ModuleLayout } = await import('path-to-module').catch(reason => {})
if (ModuleLayout) {
Layout = ModuleLayout
}
}
catch (error) {
// intentionally swallawed
}
return <Layout />
}
我希望 try-catch 语句为我抑制错误。
但我得到这个错误:
找不到模块:无法解析“模块路径”
为什么
catch块不起作用?如何捕获动态导入的错误?
【问题讨论】:
-
<Layout />是否呈现? -
不,因为 Next.js 显示错误而不是渲染。
标签: javascript next.js