在node.js中,可以使用require:
加载JSON文件$ node
> let data = require('./data.json')
undefined
> data
[ { a: 1 }, { a: 10 }, { a: 100 } ]
是否可以使用新的ES6 import
方法执行此操作?
执行以下操作会很有用:
在data.json中......
[ { a: 1 }, { a: 10 }, { a: 100 } ]
在loader.html中......
<html>
<head>
<title>ES6 modules tryout</title>
<script src="load.js" type="module"></script>
</head>
<body>
</body>
</html>
在load.js ...
import * as data from './data.json'
...但这会导致错误:
Loading failed for the <script> with source “http://localhost/data.json”.
因为在JSON模块中你不能使用export
和default
,是否有某种方法可以从JSON文件导入所有内容并为其命名import
,或者我需要坚持使用像这样的异步调用的旧方法吗?
fetch('data.json')
.then(r => r.json())
.then(data => /* something with data */)
答案 0 :(得分:0)
是的,这是可能的,但该功能仍处于试验阶段。使用 followig 命令标志 node --experimental-modules --experimental-json-modules your-filename.mjs