这将像on:change事件一样。
我没有使用此事件,因为在某些小型库中不会发出此事件,并且暗示是使用绑定和$.
然而,Svelte 似乎没有一个干净的语法。
我只能想到类似的东西
$: {
if (variable) {
doSomething();
}
}
Run Code Online (Sandbox Code Playgroud)
其中每次variable的值发生变化,doSomething()都会运行。
但是语句的使用if很奇怪..如果variable是布尔值怎么办?这样,当变量的值为 false 时,函数将不会运行。
这个想法是在每次变量值发生变化时运行该函数,无论新值实际是什么。
我也尝试过
$: doSomething(variable);
Run Code Online (Sandbox Code Playgroud)
它可以工作,但也很奇怪,因为该函数doSomething可能不需要参数。在这种情况下,参数纯粹是为了添加variable作为此$语法的依赖项......
还尝试了/sf/answers/3989126851/中的答案,但这根本不起作用。文档(/sf/answers/3989126851/)中也没有提到它。
提前致谢!
Rich Harris 建议的解决方案似乎确实有效:
$: variable, doSomething()
Run Code Online (Sandbox Code Playgroud)
工作示例:https://svelte.dev/repl/c25bdd71c9764f1f809bd35737fbaeb9 ?version=3.53.1
| 归档时间: |
|
| 查看次数: |
1679 次 |
| 最近记录: |