*ngIf 相当于 lit-element/polymer
*ngIf equivalent in lit-element/polymer
我希望在 lit-element 中实现基于条件的 HTML,需要 Angular 提供的类似 *ngIf 的东西。
我可以根据条件呈现不同的 HTML,但如果可以根据条件完成就更好了。
您可以使用普通 Javascript。在 official documentation
中解释得很好
示例:
${this.myBool ? html`<p>something</p>` : html`<p>something else</p>`}
扩展 Kuba 的回答,最好在 lit-html 条件下尽可能具体,因为您的条件范围越广,当条件变化。例如,您可以使 official documentation 中给出的示例:
this.myBool ? html`<p>something</p>` : html`<p>something else</p>`
并更有效地编写为:
html`<p>${this.myBool ? 'something' : 'something else'}</p>`
这里的这个小变化并没有太大变化,但是当您可以减少组件层的重新渲染量时,它就会开始增加。
有关 lit-html
如何处理模板渲染的更详尽的解释,请参阅:https://lit-html.polymer-project.org/guide/concepts#template-creation
我希望在 lit-element 中实现基于条件的 HTML,需要 Angular 提供的类似 *ngIf 的东西。
我可以根据条件呈现不同的 HTML,但如果可以根据条件完成就更好了。
您可以使用普通 Javascript。在 official documentation
中解释得很好示例:
${this.myBool ? html`<p>something</p>` : html`<p>something else</p>`}
扩展 Kuba 的回答,最好在 lit-html 条件下尽可能具体,因为您的条件范围越广,当条件变化。例如,您可以使 official documentation 中给出的示例:
this.myBool ? html`<p>something</p>` : html`<p>something else</p>`
并更有效地编写为:
html`<p>${this.myBool ? 'something' : 'something else'}</p>`
这里的这个小变化并没有太大变化,但是当您可以减少组件层的重新渲染量时,它就会开始增加。
有关 lit-html
如何处理模板渲染的更详尽的解释,请参阅:https://lit-html.polymer-project.org/guide/concepts#template-creation