问题标签 [svelte]

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 投票
2 回答
89 浏览

svelte - 动态键控每个?

是否可以使用组件属性的值键入每个块有一个动态键?

例如:

0 投票
2 回答
642 浏览

svelte - 重新创建一个组件?

有没有办法在 Svelte 中重新创建组件?

上下文是我有一个已经创建的组件。一旦它完成它的过程,我希望它被销毁然后再次创建。这会将其属性恢复为其默认状态,并确保对其嵌套组件执行相同操作。

我想这在现有的组件方法中在技术上是可行的,但我想知道是否有一种直接的方法来解决它。

顺便说一句,我知道在某些情况下重新创建组件可能效率低下。最好通过手动重置组件及其嵌套组件的状态来实现所需的重新创建效果。例如,递归函数可以以某种方式遍历组件及其嵌套组件,并调用每个组件的默认数据函数。然而,这并不是那么简单,并且存在一些问题(即计算属性和创建生命周期挂钩)。

0 投票
2 回答
834 浏览

svelte - 自动将 html 属性传递给 svelte 组件

是否不可能允许苗条组件自动将所有常规 html 属性应用于组件中最顶层的元素?

组件.html

应用程序.html

并将 .extend 添加到组件内的 div 中吗?

0 投票
1 回答
2181 浏览

javascript - 我有一些关于 Sapper/Svelte 的问题

我刚开始第一次使用 Sapper ( https://sapper.svelte.technology )。到目前为止我真的很喜欢它。我需要它做的一件事是显示我的应用程序中可用的组件列表并显示有关它们的信息。理想情况下,有一种方法可以根据页面上的动态绑定来更改组件的外观。

我有几个关于使用框架的问题。

首先,我将提供我的代码片段,然后是屏幕截图:

在此处输入图像描述

现在我的问题:

  1. 我注意到我无法#each通过我的对象。我必须遍历它的键。如果我能做这样的事情会很好:

    {{#each info.attributes 作为属性}}

    {{attribute.description}}

    {{/每个}}

  2. 在 Sapper 之前,我会使用 Angular-translate 模块,它可以根据给定的 JSON 文件对字符串进行翻译。有谁知道是否存在 Sapper/Svelte 等价物,还是我可能需要自己想出的东西?

  3. 我不习惯做进口。我更习惯于 Angular 中的依赖注入,它看起来更干净(没有路径)。有什么方法可以创建一个COMPONENTS可以在我的文件中使用的常量,或者我需要在每次需要访问其数据的情况下导入一个 JSON 文件?

  4. 作为#3 的后续,我想知道是否有一种方法可以更好地包含文件,而不必依赖于使用../..来浏览我的文件夹结构?如果我要更改其中一个文件的路径,我的终端会抱怨并给出错误,这很好,但我想知道是否有更好的方法来导入我的文件。

  5. 我知道必须有更好的方法来实现我在示例中实现的内容。基本上,您会在属性旁边看到一个输入框,如果我在那里进行更改,我将调用一个updateComponent函数,然后this.set()在当前范围内执行 a 以覆盖绑定。这可行,但我想知道是否有某种方法可以避免该功能。我认为您可以绑定输入的值并让它自动更新我的<TopBar>组件绑定......也许?

  6. preload方法使我可以访问params. 我想知道是否有某种方法可以在params.slug没有预加载功能的情况下访问。

真正酷的是让一些专家以最好的方式重写我所做的事情,可能会解决我的一些问题。

0 投票
1 回答
2092 浏览

javascript - Await Block/Promise/Fetch 用于将 JSON 数据传递给 Svelte 组件

Svelte 中的 {{#await}} 块在这一点上是相当新的,所以这个用例可能还不是可以使用这种方法实现的。

我尝试将 url(JSON 文件的位置)作为属性传递给组件,并在组件本身的 promise 中获取它,好处是我可以使用 {{#await}} 块来处理组件内的状态。

该组件正在一个更大的组件中使用,如下所示:

在 Showcase 组件中,我使用 Promise 作为属性(请参阅此处的 Svelte 文档)使用 {{#await}} 块为组件提供状态。

问题是我无法dataUrl在 Promise 中领取财产。(我可以吗?)

我认为实现此行为的另一种方法是在观察者中包装一个承诺(Rich Harris在此处提出了这一建议)。但是,如果确实有一种访问方式,那么不使用 {{#await}} 似乎很可惜,dataUrl因为这(理论上)是处理showcaseData组件加载时间设置的最简洁的方式。

谁能看到这可能的方法?

0 投票
1 回答
116 浏览

svelte - 事件计算属性问题

我正在学习 Svelte,我想知道为什么单击事件在此示例中不起作用。我收到一条错误消息:

类型错误:每个值未定义'

https://svelte.technology/repl?version=1.56.1&gist=798be31e79dfbf363a9f7e497557acfb

0 投票
0 回答
94 浏览

svelte - 自定义 Svelte 小部件错误“_bind 不是函数”

我有一个非常简单的 contenteditable Svelte 小部件宽度双绑定到 innerHtmL:

我可以将其称为:

但是在控制台中有一个奇怪的错误:

它似乎有效,但错误在那里。有任何想法吗?

0 投票
2 回答
2455 浏览

svelte - 在苗条的弹出窗口之外单击时关闭模式弹出窗口

我的一个应用程序中有弹出模式。我想在模式之外单击时关闭此弹出窗口。我可以使用 javascript 实现此行为,但我无法找到使用 svelte 框架使其工作的方法。现在我正在实现这样的行为

但我希望使用 svelte 来完成这项工作。

0 投票
2 回答
4150 浏览

npm - Sapper/Svelte SASS 预处理?

所以我正在检查 Sapper/Svelte 的真实实现:https ://github.com/sveltejs/realworld

我已经阅读了很多关于 SASS 预处理的内容,但似乎并不完全支持它,但是上面有一些文档。据我所知,在对文件进行以下修改后,我应该能够预处理我的标签webpack.client.config.js

我不断收到以下错误:

node server.js realworldsapper/node_modules/tapable/lib/Tapable.js:375 个参数[i].apply(this);

有想法该怎么解决这个吗?

0 投票
1 回答
2701 浏览

svelte - 如何在 Sapper/Svelte 中使用 JavaScript 库?

使用 Sappers 导出功能来构建静态站点,我希望能够使用 JavaScript 库,如Conversational FormGSAP。尝试将它们添加到client.js或我的组件中,我无法访问该window对象。

我如何最好地解决这个问题?