mirror of
https://github.com/MercuryWorkshop/dreamlandjs.git
synced 2025-11-09 12:05:18 -05:00
1
5. Conditional Rendering
~coolelectronics edited this page 2024-03-10 13:51:20 -04:00
Being able to dynamically display data with {use()} is great, but it's also common to hide and show elements depending on data. The $if() macro helps you do that easily.
<div>
{$if(condition,
<div>rendered if true</div>,
<div>rendered if false<div>,
)}
</div>
Here's an example, using a button to show/hide an input field.
function App(){
this.showInput = false;
return (
<div>
<h1>Conditional Rendering!</h1>
<button on:click={() => this.showInput = !this.showInput}>
{use(this.showInput, show=>show ? "Hide Input" : "Show Input")}
</button>
{$if(use(this.showInput),
<input placeholder="type here...." />
)}
</div>
)
}