无法Map导入的JSON数据:抛出类型错误

lhcgjxsq  于 2023-01-14  发布在  其他
关注(0)|答案(1)|浏览(351)

以下是存储在data.json文件中的示例数据:

[
  {"id": 23, "name": "Good!", "state": "OK"},
  {"id": 24, "name": "Not good...", "state": "Fail"},
  {"id": 26, "name": "Oh...", "state": "OK"},
  {"id": 27, "name": "What?", "state": "Fail"}
]

这个脚本尝试Map数据:

import * as data from './data.json'

let jsonData = data
console.log(jsonData)

jsonData = jsonData.map(({name, state}) => ({name, state}))
console.log(jsonData)

输出为:

{default: Array(4)}
default
:
(4) [{...}, {...}, {...}, {...}]
0
:
(3) {id: 23, name: "Good!", state: "OK"}
1
:
(3) {id: 24, name: "Not good...", state:...}
2
:
(3) {id: 26, name: "Oh...", state: "OK"}
3
:
(3) {id: 27, name: "What?", state: "Fail...}
TypeError: jsonData.map is not a function
    at <anonymous>:35:21
    at dn (<anonymous>:16:5449)

所以,第一个console.log()调用打印了一些看起来可以迭代的东西,为什么它会抛出TypeError呢?
我试着运用一些技巧,比如:let jsonData = JSON.parse(JSON.stringify(data)),但我找不到任何可用的方法。
如何解析文件中的数据以使其能够使用map()方法?

ee7vknir

ee7vknir1#

恭喜您!您终于接触到了JavaScript中模块的奇妙世界。
这可能就是你想要的:

import data from './data.json'

相关问题