npm - 将“date-fns”导入 Svelte 模块时出错
问题描述
尝试构建我的 Svelte 应用程序时出现以下错误:
[!] Error: 'default' is not exported by node_modules\date-fns\esm\index.js, imported by src\components\Month.svelte
https://rollupjs.org/guide/en/#error-name-is-not-exported-by-module
src\components\Month.svelte (2:11)
1: <script>
2: import dateFns from 'date-fns';
我先跑了npm install date-fns
,所以这个包存在于我的项目中。我正在使用使用 degit 模板创建的默认汇总配置。
关于如何让它发挥作用的任何想法?
干杯!
解决方案
如错误消息所述,它可能date-fns
不具有默认导出功能。尝试按名称导入您需要的方法,例如:
import { format, compareAsc } from 'date-fns'
format(new Date(2014, 1, 11), 'MM/dd/yyyy')
//=> '02/11/2014'
const dates = [
new Date(1995, 6, 2),
new Date(1987, 1, 11),
new Date(1989, 6, 10),
]
dates.sort(compareAsc)
//=> [
// Wed Feb 11 1987 00:00:00,
// Mon Jul 10 1989 00:00:00,
// Sun Jul 02 1995 00:00:00
// ]
您可能还必须根据您的特定要求导入特定的子模块和/或语言环境。date-fns 文档非常详尽,您应该在那里找到所需的所有答案。