【问题标题】:Svelte - Export a variable but Rollup reports that the variable isn't exportedSvelte - 导出变量但汇总报告未导出变量
【发布时间】:2021-12-31 14:06:41
【问题描述】:

我是苗条的新手(3 周),如果我做错了什么,现在不要这样做。尝试导出一个const用于其他组件,vscode没有报错,但是cmd中的rollupJs报这个错...

[!] 错误:'repos' 不是由 src\components\Request.svelte 导出的,而是由 src\components\List.svelte 导入的

但是变量被导出就好了(我猜)。

这是 Request.svelte

<script>
import {writable} from 'svelte/store'
let userName = ''
export const repos = writable ([]);

这是我要导入 const repos 的 List.svelte...

<script>
import {onMount} from "svelte";
import {MDCList} from '@material/list';
import {MDCRipple} from '@material/ripple';
import {repos} from './Request.svelte'

repos = data;

那么我做错了什么?

【问题讨论】:

    标签: variables import export svelte rollupjs


    【解决方案1】:

    如果您想在其他地方公开一个变量以供命令式使用,您需要从模块脚本中导出它:

    <script context="module">
      import {writable} from 'svelte/store'
      export const repos = writable ([]);
    </script>
    
    <script>
      ..
    </script>
    

    教程:https://svelte.dev/tutorial/module-exports

    但是,我看到在你的代码 sn-p 中你做了repos = data。这不起作用,您不能从外部更改这样的导出属性。如果您想从外部以声明方式更改组件属性(不是模块属性),请执行export let repos = ..(注意let 而不是const),然后在您使用它的组件中执行&lt;List repos={data} /&gt;。道具教程:https://svelte.dev/tutorial/declaring-props

    【讨论】:

    • 感谢所有提示。既然你说我看到了错误,非常感谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-01-07
    • 2017-02-04
    • 1970-01-01
    • 1970-01-01
    • 2021-08-22
    • 1970-01-01
    • 2022-11-25
    相关资源
    最近更新 更多