微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

导入 vs 需要 - 新版本

如何解决导入 vs 需要 - 新版本

所以我在学习 NodeJS 教程。

const low = require('lowdb')
const FileSync = require('lowdb/adapters/FileSync')
const adapter = new FileSync('db.json')
const db = low(adapter)

我试过用这个:

import {default as lowdb} from 'lowdb'

这个:

import lowdb from 'lowdb'

这一切都会引发错误

对于如何以新的 import 方式使用它而不是折旧的 require 有点困惑。

解决方法

有一件事要改变,第二件事要检查第一个是否不能完全解决问题。

  1. 模块没有默认导出,您尝试的两个 import 语句假定存在默认导出。按照 the package page 中的用法示例进行操作,其中包括 import { Low,JSONFile } from 'lowdb'。使用 the package page 的 API 中列出的那个和/或其他内容应该可以满足您的需求。

  2. 如果您这样做了,但仍然不起作用,请确保您已将文件命名为 .mjs 或将 "type": "module" 包含在您的 package.json 中。有关详细信息,请参阅 the Node.js documentation for packages。 (这将适用于撰写本文时支持的所有 Node.js 版本,即 Node.js 版本 12.x、14.x 和 16.x。如果您运行的是 10.x 或更早版本,则需要升级。)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。