问题标签 [svelte-3]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
95 浏览

svelte - 影响 svelte 中 if/else 结果的组件

我在 svelte 3 中有一个奇怪的情况,在标记中添加子组件会影响 if/else 块的结果。鉴于此标记,为什么第一个htmlColumns.includes会输出TRUE!!!但是如果具有相同的确切条件,则第二个 else 永远不会再次输出!!!?

在此处输入图像描述

真正令人困惑的地方是,如果我从最后一个 else 块中删除我的自定义CellEditor组件,if/else 逻辑的行为就像预期的那样再次输出!!!:

在此处输入图像描述

CellEditor 组件如何影响 if/else 逻辑块的结果?我已经将 CellEditor 组件剥离为一个没有脚本的 div,它仍然以同样的方式影响它。

0 投票
1 回答
1159 浏览

javascript - 如何在路线更改中保持苗条的商店状态?

我有一个苗条的存储对象,只要对象更改user,它就会设置为另一个对象:consumerconsumer

我可以看到它user正在更新,但是当我通过单击带有 hrefwindow.location.replace()的按钮或商店似乎已重置来更改路线时。

我在文档中找不到任何关于此的内容。如何在路线更改时保留商店?谢谢你的帮助。

0 投票
2 回答
110 浏览

svelte - 更新数组中对象的正确方法是什么?

我有一个对象数组,在我的代码中我列出了这些

添加到购物车功能更新对象上的变量:

这不会触发反应,我应该怎么做?

0 投票
1 回答
87 浏览

javascript - 数组元素在控制台日志中是正确的,但呈现不正确

我试图将组件分成选定的数组,而不是选定的数组,以便与前一个数组分开。But when the first item of the array is selected, it is copied, instead of added, to the other array - at least on the screen. 但在控制台日志中,数组是应有的。

我在调试时发现了这个错误,但我不知道如何解决这个问题。

例外:错误::除非在刷新时使用 Cards.get data [as data] at Cards.invokeGetter (:1:142) 处的“访问器:true”或“”编译,否则无法直接从组件实例中读取道具

这是问题的repl

这是划分数组的函数:

组件卡:

及其调度代码:

这是控制台日志:

在此处输入图像描述

0 投票
1 回答
4660 浏览

svelte - Svelte 自定义元素 API

我对如何创建自定义元素 API 有疑问。我已按照文档进行操作,但收到以下警告:

生成自定义元素时使用“标签”选项。您是否忘记了“customElement:true”编译选项?(Link.svelte:1:16)

REPL

我在编译器选项中标记了 customElement: true 。

我迷路了……有人能帮帮我吗?

0 投票
1 回答
1185 浏览

svelte-3 - 听众喜欢吗组件范围还是全局?

如果我使用在组件内添加一个键监听器

根据https://svelte.dev/tutorial/svelte-window,当组件被销毁时,监听器是否被移除?我想确保我不会导致任何形式的内存泄漏。

0 投票
3 回答
1188 浏览

svelte - Svelte 自定义元素不转发事件

我想在我的项目中使用Tabulator ,它还没有与 Svelte 集成。是一个非常完整的数据表库,我之前已经用过。但是,当我尝试使用操作按钮(编辑、删除...)创建典型列时,我总是使用他们的自定义格式化程序,将 html 作为字符串返回。

格式化列的函数返回如下内容:

<custom-button />是使用index.html ( )创建<svelte:options>并添加到项目中的自定义元素。<script src="lib/CustomButton.js"></script>

自定义按钮显示在表格中,但无法转发事件。似乎该组件无法在其自身范围之外进行通信。

0 投票
1 回答
319 浏览

node.js - 如何从 svelte 中的节点模块导入 css 文件?

我尝试了很多方法从 easyMDE 模块导入 css 文件,但它仍然被阻止或取消,如图所示:

在此处输入图像描述

当我点击它们时,上面写着:

推荐人政策:同源

我尝试使用“rollup-plugin-css-only”,将其添加到 index.html 文件的<head>using<link>中,但它们都不起作用。有人可以告诉我如何在不被阻塞的情况下导入 css 吗?

0 投票
0 回答
115 浏览

web-component - 使用纤细的 Web 组件(自定义元素)的 outros$1 未定义错误

在使用 svelte 3.19.2 构建 Web 组件(又名自定义元素)时,当我尝试使用 {#if} 或 {#await} 但 {#each}工作正常。

作品:

不工作:

不工作:

相关支持代码:

任何人都知道如何解决这个问题?我是 Svelte 的新手,不知所措。这段代码不可能是更简单的代码。graphql 承诺正在返回并与模板中的 each、if 和 await 一起工作,尽管它们都抛出 outros$1 未定义的错误。

似乎 github 上的其他几个错误(#3448 和 #3165)也与没有围绕 outros 的检查有关并且它未定义。不确定它们是否相关。我想知道这是否是使用 svelte 构建 Web 组件的已知问题?谢谢。

0 投票
1 回答
1926 浏览

css-selectors - 对所有文件应用 svelte-ignore 警告注释

我在控制台中收到一堆警告,说来自其他文件或已删除的 css 的 css 为“未使用的 CSS 选择器”。它可能与https://github.com/sveltejs/sapper/issues/842有关,但现在我只是在寻找一种方法来防止未使用的 css 选择器警告出现在控制台中。

我曾尝试在 _layout.svelte 和 template.html 文件的顶部写评论,如下所示:<!-- svelte-ignore css-unused-selector -->就像这里所做的那样:https ://svelte.dev/docs#Comments ,但它不起作用。我可以将其添加到每个文件中,但我想知道是否有办法让它适用于所有文件。谢谢。