单独更改按钮的颜色
Svelte change color of buttons indivually
我有一些按钮,当我点击每个按钮时,背景颜色应该会改变。现在,它会在单击一个按钮时更改所有按钮的颜色。但是,它应该单独用于每个按钮。有人知道怎么做吗?
这是我的主要身材 class:
<script lang="ts">
import Button from './Button.svelte';
let empty = false;
function changeBtnState() {
if (empty) {
empty = false;
} else {
empty = true;
}
}
</script>
<Button label="process" {empty} onClickFn={changeBtnState} />
<Button label="date" {empty} onClickFn={changeBtnState} />
<style lang="scss">
.main-button.empty {
background-color: red;
}
</style>
这就是我的按钮组件
<script lang="ts">
export let label: string = 'test';
export let onClickFn: () => void = () => {
return;
};
export let empty = false;
</script>
<button
type="submit"
class="main-button"
class:empty={empty}
on:click={onClickFn}>{label}</button
>
<style lang="scss">
.main-button{
background-color: #f2eee2;
}
</style>
问题是您将两个按钮的空属性绑定到同一个变量:
<Button label="process" {empty} onClickFn={changeBtnState} />
<Button label="date" {empty} onClickFn={changeBtnState} />
每个按钮都需要一个单独的按钮。
您可以做的是将 changeBtnState 集成到 Button 组件中。
因此,空变量是在组件中定义的,并且每个组件都不同。
如果您不想将它集成到一个组件中,另一种选择是创建一个“空”变量数组(每个按钮 1 个)。
我有一些按钮,当我点击每个按钮时,背景颜色应该会改变。现在,它会在单击一个按钮时更改所有按钮的颜色。但是,它应该单独用于每个按钮。有人知道怎么做吗?
这是我的主要身材 class:
<script lang="ts">
import Button from './Button.svelte';
let empty = false;
function changeBtnState() {
if (empty) {
empty = false;
} else {
empty = true;
}
}
</script>
<Button label="process" {empty} onClickFn={changeBtnState} />
<Button label="date" {empty} onClickFn={changeBtnState} />
<style lang="scss">
.main-button.empty {
background-color: red;
}
</style>
这就是我的按钮组件
<script lang="ts">
export let label: string = 'test';
export let onClickFn: () => void = () => {
return;
};
export let empty = false;
</script>
<button
type="submit"
class="main-button"
class:empty={empty}
on:click={onClickFn}>{label}</button
>
<style lang="scss">
.main-button{
background-color: #f2eee2;
}
</style>
问题是您将两个按钮的空属性绑定到同一个变量:
<Button label="process" {empty} onClickFn={changeBtnState} />
<Button label="date" {empty} onClickFn={changeBtnState} />
每个按钮都需要一个单独的按钮。
您可以做的是将 changeBtnState 集成到 Button 组件中。 因此,空变量是在组件中定义的,并且每个组件都不同。 如果您不想将它集成到一个组件中,另一种选择是创建一个“空”变量数组(每个按钮 1 个)。