Svelte +Vite:Typescript 中的可写存储,无法导入 Writable<T> 接口

Svelte +Vite: writable store in Typescript, cannot import Writable<T> interface

在一个使用 Vite 搭建的 Svelte 项目中,我尝试用 Typescript 编写一个 Svelte 商店;在导入 Writable<T> 接口时遇到问题,如下所示:

import { Writable, writable, derived } from 'svelte/store';

这会导致浏览器控制台出现以下错误:

Uncaught SyntaxError: The requested module '/node_modules/.vite/svelte_store.js?v=16f52463' does not provide an export named 'Writable'.

有没有办法在这样的设置中导入 Writable<T> 界面?

使用import type { Writable } from 'svelte/store';.

更新:从 TypeScript 4.5 开始,您应该能够在一行中完成所有导入。所以而不是

import type { Writable } from 'svelte/store';
import { writable, derived } from 'svelte/store';

你可以做到

import { type Writable, writable, derived } from 'svelte/store';