首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在Reactjs中有条件导入文件

如何在Reactjs中有条件导入文件
EN

Stack Overflow用户
提问于 2022-01-14 17:58:48
回答 2查看 689关注 0票数 0

我有一个大型应用程序,它监视一个名为routes.js的文件。我根本无法更改文件名或与routes.js混淆。当满足条件时,我需要根据useState变量从另一个组件加载另一个文件。需要将以下代码放在Apps.js示例中:

代码语言:javascript
运行
复制
if (!change) {
import routes from "routes";
} else {
import routes from "newroutes"
}

这个是可能的吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2022-01-14 18:12:23

你只需化名进口。

代码语言:javascript
运行
复制
import routes_1 from "routes";
import routes_2 from "newroutes"  

然后,只需声明一个变量:routes,并将适当的值赋给它。

代码语言:javascript
运行
复制
routes = !change ? routes_1 : routes_2;
票数 1
EN

Stack Overflow用户

发布于 2022-01-14 18:09:18

可以使用Webpack怠速加载 (如果您使用Webpack构建应用程序):

代码语言:javascript
运行
复制
import(/* webpackChunkName: "routes" */ './routes').then(module => {
     const routes = module.default;
});

但是,您可能需要调整构建配置。而且,此导入将返回一个承诺,因此您应该在回调中编写代码。

更新:但在您的情况下,您似乎不需要它。你可以这样做:

代码语言:javascript
运行
复制
import file1 from 'routes'
import file2 from 'newroutes'

let routes = file1
if (change) {
  routes = file2
}

因此,您的routes变量将保持不变

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70714756

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档