Bind working i daresay

This commit is contained in:
2026-01-31 10:03:45 +13:00
parent 800fbee769
commit d0eca28e55
2 changed files with 11 additions and 9 deletions

View File

@@ -1,5 +1,6 @@
<script lang="ts"> <script lang="ts">
let avatar: string let { image = $bindable('') } = $props()
let fileinput: HTMLInputElement let fileinput: HTMLInputElement
const onFileSelected =(e)=>{ const onFileSelected =(e)=>{
@@ -7,7 +8,7 @@
let reader = new FileReader(); let reader = new FileReader();
reader.readAsDataURL(image); reader.readAsDataURL(image);
reader.onload = e => { reader.onload = e => {
avatar = e.target.result as string image = e.target.result as string
}; };
} }
@@ -15,17 +16,16 @@
<div> <div>
{#if avatar} {#if image}
<button class="h-30 w-full rounded-2xl hover:text-white/30" on:click={()=>{fileinput.click();}}> <button class="h-30 w-full rounded-2xl hover:text-white/30" onclick={()=>{fileinput.click();}}>
<img class="avatar rounded-2xl hover:brightness-50 transition-opacity" src="{avatar}" alt="d" /> <img class="avatar rounded-2xl hover:brightness-50 transition-opacity" src="{image}" alt="d" />
</button> </button>
{:else} {:else}
<button class="text-center bg-white/30 h-30 w-full rounded-2xl" on:click={()=>{fileinput.click();}}> <button class="text-center bg-white/30 h-30 w-full rounded-2xl" onclick={()=>{fileinput.click();}}>
Select Image Select Image
</button> </button>
{/if} {/if}
<input style="display:none" type="file" accept=".jpg, .jpeg, .png" on:change={(e)=>onFileSelected(e)} bind:this={fileinput} > <input style="display:none" type="file" accept=".jpg, .jpeg, .png" onchange={(e)=>onFileSelected(e)} bind:this={fileinput} >
</div> </div>

View File

@@ -1,5 +1,7 @@
<script lang="ts"> <script lang="ts">
import ImageTarget from "./imageTarget.svelte" import ImageTarget from "./imageTarget.svelte"
let image = $state('')
</script> </script>
<ImageTarget /> <ImageTarget bind:image />