当前位置: 首页 > 面试题库 >

在React中导入JSON文件

糜征
2023-03-14
问题内容

我是React的新手,正在尝试DATA从外部文件导入JSON 变量。我收到以下错误:

找不到模块“ ./customData.json”

有人可以帮我吗?如果我的DATA变量位于index.js外部JSON文件中,但没有该变量,则它可以工作。

index.js

import React, {Component} from 'react';
import ReactDOM from 'react-dom';
import customData from './customData.json';
import Profile from './components/profile';
import Hobbies from './components/hobbies';

class App extends Component {
  render() {
    return (
      <div>
        <Profile name={this.props.profileData.name}imgUrl={this.props.profileData.imgURL} />
        <Hobbies hobbyList={this.props.profileData.hobbyList}/>
      </div>
    );
  }
}

ReactDOM.render(<App profileData={DATA}/>, document.querySelector('.container'));

hobbies.js

import React, {Component} from 'react';

var Hobbies = React.createClass({
  render: function(){
    var hobbies = this.props.hobbyList.map(function(hobby, index){
        return (<li key={index}>{hobby}</li>);
    });
    return (
        <div>
            <h5>My hobbies:</h5>
            <ul>
                {hobbies}
            </ul>
        </div>
    );
  } 
});

export default Hobbies;

profile.js

import React from 'react';

var Profile = React.createClass({
render: function(){
    return (
        <div>
            <h3>{this.props.name}</h3>
            <img src={this.props.imgUrl} />
        </div>
    )
  }
});

export default Profile

customData.json

var DATA = {    
    name: 'John Smith',
    imgURL: 'http://lorempixel.com/100/100/',
    hobbyList: ['coding', 'writing', 'skiing']
}

export default DATA

问题答案:

一种不错的方法(不添加伪造的.js扩展名,用于代码而不用于数据和配置)是使用json-loader模块。如果您曾经使用create-react- app过脚手架,那么该模块已经包含在内,您只需导入json:

import Profile from './components/profile';


 类似资料:
  • 问题内容: 我正在尝试在React组件中加载language.json文件。当我想导入json文件时,第一步出现以下错误。这是错误: 我正在使用webpack,这是配置文件: 并且我已经安装了以下软件包: 这就是我尝试导入文件(ES6格式)的方式: 另外,我检查了json文件格式并进行了验证!那么,您认为问题出在哪里? 问题答案: azium是正确的,需要加载程序,但这是很好的配置: npm命令

  • 问题内容: 我有一个如下文件: 我正在尝试将其导入文件。为此,我将其添加到类型定义中: 我正在这样导入。 在文件中,我将颜色用作。但是我得到一个错误: 属性’primaryMain’在类型’typeof“ * .json”上不存在 问题答案: 导入表单和模块声明需要就模块的形状,导出的内容达成一致。 编写时(自TypeScript 2.9导入JSON时,针对兼容模块格式的一种次佳实践, 请参见no

  • 我想将CSS文件导入react组件。 我已经尝试但我得到下面的错误; 找不到模块:错误:无法解析文件或目录.../.../.../Public/style/disabledLink in c:\用户\用户\文档\pisa-app\Client\src\组件@./Client/src/组件/ShoppingCartLink.js19:20-66哈希: 2d281bb98fe0a961f7c4版本:

  • 问题内容: 这是我配置客户端以通过react-intl呈现正确语言的方式。 但是我想基于cookie中的语言环境动态导入localeData。因此,如果我的用户的语言环境是“ en”,我将仅加载到en.json文件中。 这样做的正确方法是什么?试图创建一个函数,但是我无法将数据正确传递给消息。 谢谢 问题答案: 通过以下代码解决了它。如果有人需要,请将其张贴在这里。

  • 问题内容: 如何在Ecmascript 6中访问json文件?以下无效: 如果我尝试导入JavaScript文件,则效果很好。 问题答案: 一个简单的解决方法: config.js 然后… 不允许导入现有的.json文件,但可以完成工作。

  • 如何访问ECMAScript 6中的JSON文件? 以下操作不起作用: 如果我尝试导入一个JavaScript文件,这很好。