javascript - 如何使用nodejs读取js文件并将默认导出模块解析为JSON
问题描述
在 Node.js 中,我希望能够读取包含 ES 模块语法的 sample.js 文件并解析默认导出。
示例.js
import foo from "foo";
const bar = [
{
name: "Homer",
},
{
name: "Marge",
},
{
name: "Bart",
},
{
name: "Lisa",
},
{
name: "Maggie",
},
];
export const addOne = (num) => num + 1;
export default bar;
到目前为止,我的 node.js 脚本只是读取文件内容并将其输出到 console.log。这是我的 node.js 脚本:
index.js
const fs = require("fs");
fs.readFile("./sample.js", "utf8", (err, data) => {
if (err) {
console.error(err);
return;
}
console.log(data);
// how can I parse the default export from data?
});
[{"name":"Homer"},{"name":"Marge"},{"name":"Bart"},{"name":"Lisa"},{"name":"Maggie"}]
如果我可以在读取文件后以某种方式获取字符串,那么我可以简单地执行JSON.parse
并获取我需要的数据。但这似乎不是一项微不足道的任务。如何读取原始 js 文件并将默认导出解析为 JSON?
解决方案
你可以简单地
import data from './sample.js';
console.log(data);
另外,请确保package.json
您有这一行:"type": "module"
.
推荐阅读
- spring - 如何在 JPQL 中使用别名?
- python - 从html python中提取表格内容
- javascript - 如何在 JavaScript 中清除文本输入并重新聚焦
- python - Django 错误 - 模型被用作中间模型......没有“组”或“权限”的外键
- react-native - react-native中reducer中的axios动作调度后如何导航到另一个屏幕
- python - 如何将时间序列数据转换为图像?
- javascript - CSS 变换比例适合窗口大小
- filter - 使用 Elixir 过滤重叠的时间段
- vb.net - 如何从 Pastebin.com 获取文件并将文件保存在 VB.NET 中的计算机上
- c++ - 如何从基于 Arduino 的微控制器向 Sentry 报告错误?