小编gur*_*urt的帖子

svelte:从组件导入商店?

我在一个简洁的组件()中创建了一个可读的存储,src/components/myComponent.svelte如下所示

import { readable } from "svelte/store";

export let data;

const mags = data.magazines;
export const allMags = readable(mags);

console.log($allMags) // correct output
Run Code Online (Sandbox Code Playgroud)

我想将此商店导入到我的src/store.js文件中,以便我可以使用它来创建派生商店。我已经尝试过以下方法:

import { writable, readable, derived } from "svelte/store";
import { allMags } from "../src/components/myComponent.svelte";
// console.log($allMags)
Run Code Online (Sandbox Code Playgroud)

我遇到了以下错误:

client.ts:112 SyntaxError: 请求的模块 '/src/components/myComponent.svelte?t=1696086887675' 未提供名为 'allMags' 的导出(位于stores.js?t=1696086887675:2:10)

显然,记录 $allMags 不起作用,我收到此错误:

|- ReferenceError: $allMags is not defined  
   at eval (src/stores.js:8:13)  
   at async instantiateModule (/node_modules/vite/dist/node/chunks/dep-e8f070e8.js:54405:9)

Internal server error: $allMags is not defined
Run Code Online (Sandbox Code Playgroud)

我认为(我是一个苗条的菜鸟)问题源于文件allMags中的导入store.js。这是不允许的吗?如果允许,我该如何修复导入语句?

svelte svelte-component svelte-store sveltekit

0
推荐指数
1
解决办法
322
查看次数