nus*_*ara 5 node.js typescript reactjs remix.run
在 Remix 中action,我使用动态require来检索不同的 JSON 文件:
export async function action({ request }: { request: Request }) {
const body = await request.formData();
const country = body.get("country");
const cities = require(`~/cities_by_country/${country}.json`);
return cities;
}
Run Code Online (Sandbox Code Playgroud)
这会产生“应用程序错误”:Error: Cannot find module '~/cities_by_country/Afghanistan.json'
事实证明,动态require才是问题所在。像这样对国家进行硬编码是有效的:
const cities = require(`~/cities_by_country/Afghanistan.json`);
Run Code Online (Sandbox Code Playgroud)
我读到,添加"module": esnext(或 es2020 或 es2022)到 tsconfig.json 将启用动态导入,至少对于 React 来说是这样。我尝试过但得到了相同的结果。
我也阅读了这些文档但无济于事:
我缺少什么?
| 归档时间: |
|
| 查看次数: |
2162 次 |
| 最近记录: |