首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在react应用上动态加载JSON文件

如何在react应用上动态加载JSON文件
EN

Stack Overflow用户
提问于 2021-03-16 16:55:36
回答 2查看 91关注 0票数 1

我想在react应用程序中动态加载一个JSON设置文件。

我使用的是webpack,当我对文件执行import操作时:

代码语言:javascript
运行
复制
import appSettings from './appSettings.json';

或要求它:

代码语言:javascript
运行
复制
const appSettings = require('./appSettings.json');

它编译json,并且不会动态加载它(例如,在运行时不可更改)。

有人能帮上忙吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-03-16 23:18:37

最后,我所做的是在我的应用程序的根目录中加载带有axios的文件。

代码语言:javascript
运行
复制
  const [appSettings, setAppSettings] = React.useState<any>(null);
  React.useEffect(() => {
    axios.get('./appSettings.json').then((response: any) => {
      setAppSettings(response.data);
    });
  }, [appSettings && appSettings.data]);

  return (
    appSettings &&
    appSettings.baseUrl && (
      <Layout className={styles.root}>
        <MyApp appSettings={appSettings} />
      </Layout>
    )
票数 0
EN

Stack Overflow用户

发布于 2021-03-16 17:09:31

您应该考虑添加useEffect挂钩,以便在json中有更改时重新呈现页面

代码语言:javascript
运行
复制
    import appSettings from './appSettings.json';
    import {useEffect} from 'react';
    useEffect(()=>{
       //code to run whe the json has loaded   
},[appSettings])
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66651896

复制
相关文章

相似问题

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