On this page
useObjectUrl
| Category | Browser |
|---|---|
| Export Size | 278 B |
| Last Changed | 2 weeks ago |
Reactive URL representing an object.
Creates an URL for the provided File, Blob, or MediaSource via URL.createObjectURL() and automatically releases the URL via URL.revokeObjectURL() when the source changes or the component is unmounted.
Usage
<script setup>
import { useObjectUrl } from '@vueuse/core'
import { shallowRef } from 'vue'
const file = shallowRef()
const url = useObjectUrl(file)
const onFileChange = (event) => {
file.value = event.target.files[0]
}
</script>
<template>
<input type="file" @change="onFileChange" />
<a :href="url">Open file</a>
</template>
Component Usage
This function also provides a renderless component version via the
@vueuse/componentspackage. Learn more about the usage.
<template>
<UseObjectUrl v-slot="url" :object="file">
<a :href="url">Open file</a>
</UseObjectUrl>
</template>
Type Declarations
/**
* Reactive URL representing an object.
*
* @see https://vueuse.org/useObjectUrl
* @param object
*/
export declare function useObjectUrl(
object: MaybeRef<Blob | MediaSource | undefined>
): Readonly<Ref<string | undefined>>
Source
© 2019-present Anthony Fu
Licensed under the MIT License.
https://vueuse.org/core/useObjectUrl/