我正在使用angular的httpclient发出http.post请求。我将发送一个属性为“ on” = true或false的正文。由于这些更改属性值的请求在Hue的url语法中非常相似,因此我想使其通用。
我找到了我有变量的地方
private lightProperties = {};
stateOn: boolean;
constructor(private httpClient: HttpClient) { }
toggleLights(lightNumber: number) {
this.getLightState(lightNumber).subscribe(data => this.stateOn = data.state.on);
this.lightProperties['on'] = !this.stateOn;
this.httpClient.put(
`${this.hueApiUrl}/${lightNumber.toString()}/state`, this.lightProperties)
.subscribe(data => data);
}
它可以工作,但是我不太明白这条线是怎么工作的?
this.lightProperties['on'] = !this.stateOn;
我不知道这是否更好?
const body = {
on: !this.stateOn
};