23 lines
956 B
Vue
23 lines
956 B
Vue
|
<script setup lang="ts">
|
||
|
|
||
|
|
||
|
const model = defineModel({
|
||
|
type: File
|
||
|
})
|
||
|
|
||
|
const getFileObject = (e: any) => {
|
||
|
model.value = e.target.files[0]
|
||
|
}
|
||
|
|
||
|
</script>
|
||
|
|
||
|
|
||
|
<template>
|
||
|
<input
|
||
|
class="relative block w-full disabled:cursor-not-allowed disabled:opacity-75 focus:outline-none border-0 form-input rounded-md placeholder-gray-400 dark:placeholder-gray-500 file:cursor-pointer file:rounded-l-md file:absolute file:left-0 file:inset-y-0 file:font-medium file:m-0 file:border-0 file:ring-1 file:ring-gray-300 dark:file:ring-gray-700 file:text-gray-900 dark:file:text-white file:bg-gray-50 hover:file:bg-gray-100 dark:file:bg-gray-800 dark:hover:file:bg-gray-700/50 ps-[96px] text-sm px-2.5 py-1.5 shadow-sm bg-white dark:bg-gray-900 text-gray-900 dark:text-white ring-1 ring-inset ring-gray-300 dark:ring-gray-700 focus:ring-2 focus:ring-primary-500 dark:focus:ring-primary-400"
|
||
|
type="file"
|
||
|
accept="image/*"
|
||
|
@change="getFileObject"
|
||
|
>
|
||
|
</template>
|