Javascript 反应:如何从导入的文件中为道具添加新值?

Javascript 反应:如何从导入的文件中为道具添加新值?,javascript,reactjs,Javascript,Reactjs,我是(非常)新的反应者,被赋予了向从另一个文件引入的组件添加一些数据的任务。这个文件输出一些JSON,我想从中访问某些数据,例如: config.forms.enquiry.title 我导入文件很好-没有问题。但我不知道如何将config包含到我的道具中 我在另一个文件中找到了一个工作示例,并复制了它的功能。我的代码就是这样 引入带有JSON的文件: import { withSettings } from 'services/settingsFile'; 在渲染函数中添加配置: rend

我是(非常)新的反应者,被赋予了向从另一个文件引入的组件添加一些数据的任务。这个文件输出一些JSON,我想从中访问某些数据,例如:

config.forms.enquiry.title
我导入文件很好-没有问题。但我不知道如何将
config
包含到我的道具中

我在另一个文件中找到了一个工作示例,并复制了它的功能。我的代码就是这样

引入带有JSON的文件:

import { withSettings } from 'services/settingsFile';
在渲染函数中添加配置:

render () {
    const styles = getStyles(this.props, this.context, this.state);
    const { config } = this.props;
    // other stuff
添加到PropType:

enquiryForm.propTypes = {
    config: PropTypes.object.isRequired,
    // other stuff
添加到撰写:

export const enquiryForm = compose(
    withSettings,
    // other stuff
但是,我得到了一个错误:

失败的上下文类型:上下文
config
在中标记为必需
n
,但其值是
未定义的

从这里我不知道该怎么办。我知道这是一个很难回答的问题,但我对React知之甚少,而且我已经陷入了困境


有人知道我应该搜索什么/哪里来修复此问题吗?

如果您可以像

import { withSettings } from 'services/settingsFile';
你为什么不这样用呢

const { config } = withSettings;

好的,问题是没有将包装元素设置为am属性

我必须升级到我的组件被引入和包装的位置:

<SettingsFile config={window.settingsFile}>

大约:

<Component conf={config} />


然后,我正在使用的组件能够读取
config

我只是在这里进行头脑风暴,但可能您正在尝试在文件“实际加载”之前读取文件。您是否尝试在componentDidMount()中执行console.log(this.props)以查看是否能够读取该文件?@MstrQKN我尝试了此操作,但componentDidMount没有启动。我认为这些错误阻止了它进入这个阶段。@MstrQKN update:我删除了破坏东西的代码,并在componentDidMount中添加了console.log。不幸的是,它显示config为空。