我有一个@HostBinding
用于设置类的组件:
@HostBinding('class.dark-1') true;
哪个工作正常。但是,现在我需要在我的组件中创建一个函数来动态更改类。
例如,从dark-1
到light-2
单击组件中的按钮时。
我知道如何创建函数并从按钮调用它,但是如何更改主机绑定中的类并使用新类刷新 UI?
我有一个@HostBinding
用于设置类的组件:
@HostBinding('class.dark-1') true;
哪个工作正常。但是,现在我需要在我的组件中创建一个函数来动态更改类。
例如,从dark-1
到light-2
单击组件中的按钮时。
我知道如何创建函数并从按钮调用它,但是如何更改主机绑定中的类并使用新类刷新 UI?
您可以clicked
在单击按钮时切换标志,并使用 getter 设置类:
@HostBinding("class.dark-1") public get classDark1() {
return !this.clicked;
}
@HostBinding("class.light-2") public get classLight2() {
return this.clicked;
}
private clicked = false;
public onClick() {
this.clicked = true;
}
Sinply 给它一个属性名称:
@HostBinding('class.dark-1') isDark = true;
然后你可以改变它:
this.isDark = false;
或更改整个类名:
@HostBinding('class') className = 'dark-1';
this.className = 'light-1';