添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

第一种:直接import引入

需要使用 json-loader 模块,如果你是使用 create-react-app 来构建项目,那么该模块已经包含在内,

你只需要用 import 像引入组件那样引入 json 文件即可, import data from '../lessonlist/courselist.json';

data 是我自己取的名字,类似组件名,不用 export default data 来导出,不过在 json 文件中这样写也会报错

第二种:把json文件改成js文件

json 文件改成 js 文件,然后把原本 json 中的数据赋值给变量 data

在用 import 引入即可, import data from '../lessonlist/courselist.js';

这2种方法访问数据如下

<span className="lesson-link-line1">{data[0].name}</span>
<span className="lesson-link-line1">{data[0].url}</span>
<span className="lesson-link-line1">{data[1].name}</span>
<span className="lesson-link-line1">{data[1].url}</span>
<span className="lesson-link-line1">{data[2].name}</span>
<span className="lesson-link-line1">{data[2].url}</span>

这2种方法的主要区别

json 文件不需要 export default 导出,也不支持该语法,会报错,

js 文件需要把数据赋值给一个变量,在 export default 导出,

json 文件中的属性和值都要用双引号,否则会报错, js 文件属性可以不用加双引号

json动态修改数据

上面的方法不支持 json 动态修改数据,假设你 json 文件数据是一个数组,并且数据是比较规律的列表,

可参考这个 react 小书,详细讲解了如何在 react 中渲染数据列表,

http://huziketang.mangojuice.top/books/react/lesson13

react渲染数据列表代码截图

import DataList from '../lessonlist/courselist.json';

下面截图中的 DataList 的数据就来自于 import 进来的 courselist.json 文件

有需要的朋友可以 领取支付宝到店红包 能省一点是一点