JSX 条件渲染不根据状态变化更新
JSX conditional render not updating based on state change
我正在使用 StencilJS 创建一个 JSX 组件,我的组件没有根据其状态变化重新呈现。我不知道为什么:
import { Component, Prop, State } from '@stencil/core'
@Component({
tag: "button-popover-group",
})
export class ButtonPopoverContainer{
@State() showPopover:boolean = false;
@Prop() popoverContent:JSX.Element;
toggleShowPopover() {
this.showPopover = !this.showPopover;
console.log(this.showPopover);
}
render() {
return (
<div class="rba-something">
<my-button onClick={this.toggleShowPopover}/>
{this.showPopover ?
<my-popover>
{this.popoverContent}
</my-popover> :
null
}
</div>
)
}
}
我的控制台日志语句验证状态正在更改,但由于某种原因我的弹出框永远不可见
好的,答案是将切换功能更改为粗箭头功能,因为到 'this' 的绑定在 JSX
中丢失了
我正在使用 StencilJS 创建一个 JSX 组件,我的组件没有根据其状态变化重新呈现。我不知道为什么:
import { Component, Prop, State } from '@stencil/core'
@Component({
tag: "button-popover-group",
})
export class ButtonPopoverContainer{
@State() showPopover:boolean = false;
@Prop() popoverContent:JSX.Element;
toggleShowPopover() {
this.showPopover = !this.showPopover;
console.log(this.showPopover);
}
render() {
return (
<div class="rba-something">
<my-button onClick={this.toggleShowPopover}/>
{this.showPopover ?
<my-popover>
{this.popoverContent}
</my-popover> :
null
}
</div>
)
}
}
我的控制台日志语句验证状态正在更改,但由于某种原因我的弹出框永远不可见
好的,答案是将切换功能更改为粗箭头功能,因为到 'this' 的绑定在 JSX
中丢失了