首页 > 解决方案 > 为什么 svelte 将花括号放在标量上?

问题描述

例如,来自文档:

<canvas
    width={32}
    height={32}
></canvas>

花括号在这里有什么作用?

标签: sveltesvelte-3

解决方案


在您展示的示例中,它没有任何区别。以下是等价的。

<canvas width={32} height={32}></canvas>
<canvas width="32" height="32"></canvas>

但是,使用花括号会导致 Svelte 将其解释为 JavaScript 表达式。这意味着您可以在花括号内进行数学运算...

<canvas width={32 + 8} height={32 - 8}></canvas>

...或将其换成变量。

<script>
  let size = 40;
</script>

<canvas width={size} height={size}></canvas>

始终编​​写花括号意味着如果您想稍后使值动态化,它可以节省一些击键,但不会影响组件的呈现方式。


推荐阅读