问题标签 [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 投票
1 回答
2825 浏览

svelte - 在 Svelte 中重新启动或重新初始化组件

有没有一种简单的方法可以强制重启 Svelte 组件?

重启用例:

  • 清除 HTML 文件输入的文件列表(不能重置路径/值)
  • 使用 CSS 悬停时选择项目后导航栏下拉折叠

也许除了重启还有其他解决方案,但让我们在这里使用组件重启。

在适用于上传用例的重启代码下方:

SomeApp.svelte

上传.svelte

更新:
如果组件未渲染,组件将被销毁。因此,当您切换组件周围的 if 块时,您可以停止和重新启动组件。

示例:
1.将运行从 true 切换为 false 以销毁 Upload 组件
2.将 run 从 false 切换为 true 以重新启动 Upload 组件

您可以使用计时器来切换重启。

0 投票
1 回答
80 浏览

javascript - 组件更新

我正在尝试在值更改时触发组件更新

它适用于 css 更新,例如 '$: cssColorValue = calcRandomColor()' 但如果我使用数组,例如 '$: values = [...newValues]'

我想要的是让 Svelte 重新渲染 for each 循环

0 投票
3 回答
15002 浏览

javascript - Svelte 3 - 如何循环每个块 X 次

我希望找到一种方法在 Svelte 3 中迭代 #each 块一定次数。在 Vue 中我会做这样的事情:

但据我了解,Svelte 使用 #eached 数组的 .length 属性处理循环的方式大不相同。有什么方法可以在 Svelte 中实现这样的效果吗?

0 投票
2 回答
773 浏览

svelte - 使用 Svelte 逐步增强表单?

我有一个包含选择、输入字段等的工作表单元素的 php 页面。
我希望表单在没有 js 的情况下继续工作,但如果 js 可用,我想将标准输入转换为增强的 Svelte 组件。
你会如何处理这个问题?
例如。如何将可用于选择标签的所有“选项”传递给将替换它的苗条组件?

0 投票
1 回答
2044 浏览

javascript - Svelte #each 不循环数据

我正在使用 SveleteJS 进行试驾并卡住了

制作了一个Dashboard组件,在该组件内部,我放置了一个白板组件:

Whitebord.svelte

当我单击按钮时,console.log触发器和我可以看到线条的大小增加,但我没有看到它在页面上呈现,只有空的红色 div 包裹它。

我已经尝试添加$:到各个地方,但我还不确定它应该在哪里使用以及不应该在哪里使用,并不是说它有什么不同。

我如何让#each 呈现一个 div 列表(此外,on:click

0 投票
8 回答
29273 浏览

svelte - How to pass parameters to on:click in Svelte?

Binding a function to a button is easy and straightforward:

But I don't see a way to pass parameters (arguments) to the function, when I do this:

The function is called on page load, and never again.

Is it possible at all to pass parameters to function called from on:click{}?


**EDIT:**

I just found a hacky way to do it. Calling the function from an inline handler works.

0 投票
1 回答
977 浏览

svelte - 谁是我在 Svelte 3 中的父组件/父名称

我有一个由不同类型的组件(父母)使用的组件。这个组件的行为稍微取决于谁是他的父母(父母的种类)。

当然,我可以将父母的名字作为道具或绑定或......

我的问题:嵌套组件是否有可能自己找出谁是父级?在 onMount 期间?

0 投票
3 回答
5198 浏览

data-binding - 如何使用 Svelte 中动态创建的选项绑定选择输入的值

我有一个带有选择输入的苗条组件,其中填充了来自外部源的数据。

如何绑定选择输入以便选择特定选项。

如果我将选项值或选定值设为静态,它似乎可以正常工作,但如果两者都是动态的,则不会。

这是我的代码

从代码来看,这是 HTML 输出。

我希望页面加载后,将选择选项 3“2018”,但不会更改,并且“-- Select Season --”是已选择的选项。

0 投票
1 回答
649 浏览

svelte - 将 Svelte 生成的节点注入静态 DOM

我有一个静态 HTML 文件,并希望使用动态 Svelte 组件对其进行扩充:

(这是一个简化的示例;“第一个”和“最后一个”元素更复杂,不能在 Svelte 中重新生成它们。)

不过,这会将动态项目附加到列表的末尾。是否有一种惯用的声明方式将它们插入中间?

我能想到的唯一解决方案是繁琐的、非声明性的 DOM 操作:

(我什至不确定这是否有效,因为span元素不允许作为直接ul后代,而且手动丢弃ref可能会使 Svelte 感到困惑?)

0 投票
1 回答
1410 浏览

conditional-statements - Svelte 的 v-show 替代品

情况是我Loading在获取请求时显示组件。我使用 store 来设置$loadingtrue内部条件是Loading组件。问题是 Loading 组件似乎需要一些时间才能显示出来。感觉/看起来原因是重新渲染加载组件。所以,我在 Svelte 中寻找v-show类似的东西,而我在 Docs 中找不到。(如果它在那里,不要生气,告诉我。)

任何人都可以帮忙处理这个案子吗?