BlogPlaygroundOne

VFileUpload API


Props
name
type
default
  | string
  | (string | [string, number])[]
  | (new () => any)
  | FunctionalComponent
undefined

Creates a v-icon component after default content in the append slot.

string
undefined

Sets the color of the input when it is not focused.

string
'$vuetify.fileUpload.browse'

Text for the browse button.

boolean
true

Vertically align appendInner, prependInner, clearIcon and label in the center.

boolean
false

Allows for the component to be cleared.

string
undefined

Applies specified color to the control - supports utility colors with or without text- prefix (for example success, purple or text-purple) or CSS color (#033 or rgba(255, 0, 0, 0.5)). Find a list of built-in classes on the colors page.

'default' | 'comfortable' | 'compact'
'default'

Adjusts the vertical height used by the component.

boolean
null

Removes the ability to click or target the component.

string
'$vuetify.fileUpload.divider'

Text in the divider.

boolean
false

Puts the input in a manual error state.

string | string[]
[]

Puts the input in an error state and passes through custom error messages. Will be combined with any validations that occur from the rules prop. This field will not trigger validation.

string
undefined

Make the input accept only files matched by one or more unique file type specifiers. Applies to drag & drop and selecting folders. Emits rejected event when some files do not pass through to make it possible to notify user and deliver better user experience.

boolean
false

Forces a focused state styling on the component.

boolean
false

Makes prepend/append icons full opacity when the input is focused and apply color.

boolean
false

Hides the browse button.

boolean | 'auto'
false

Hides hint and validation errors. When set to auto messages will be rendered only if there’s a message (hint, error message, counter value etc) to display.

boolean
false

Hides spin buttons on the input when type is set to number.

string
undefined

Displays hint text below the input when focused. Force this always open with the persistent-hint property.

  | string
  | (string | [string, number])[]
  | (new () => any)
  | FunctionalComponent
'$upload'

Apply a specific icon using the v-icon component.

string | boolean
false

Sets the color of the prepend/append icons.

string
undefined

Sets the DOM id on the component.

boolean
null

Adds / removes inline padding in inputs details. Useful when trying to align different variants of fields and selection controls.

boolean
false

Renders the file list inside the dropzone container instead of below it.

string
undefined

Sets the text of the v-label or v-field-label component.

string | number
1

Control the maximum number of shown errors from validation.

string | number
undefined

Sets the maximum width for the component.

string | string[]
[]

Displays a list of messages or a single message if using a string.

string | number
undefined

Sets the minimum width for the component.

File | File[]
null

The v-model value of the component. If component supports the multiple prop, this defaults to an empty array.

boolean
false

Allows multiple files to be uploaded.

string
undefined

Sets the component’s name attribute.

boolean
false

Forces hint to always be visible.

  | string
  | (string | [string, number])[]
  | (new () => any)
  | FunctionalComponent
undefined

Prepends an icon to the component, uses the same syntax as v-icon.

boolean
null

Puts input in readonly state.

(
  | string
  | boolean
  | PromiseLike<ValidationResult>
  | ((value: any) => string | false | true)
  | ((value: any) => PromiseLike<ValidationResult>)
  | [string, any, string]
)[]
[]

Accepts a mixed array of types function, boolean and string. Functions pass an input value as an argument and must return either true / false or a string containing an error message. The input field will enter an error state if a function returns (or any value in the array contains) false or is a string.

string | boolean
true

Determines whether an overlay is used when hovering over the component with files. Accepts true/false to enable background, and string to define color.

boolean
false

Shows the size of the file.

string
undefined

Specify a subtitle text for the component.

string
undefined

Specify a theme for this component and all of its children.

string
'$vuetify.fileUpload.title'

Specify a title text for the component.

  | 'eager'
  | 'lazy'
  | 'blur'
  | 'input'
  | 'submit'
  | 'invalid-input'
  | 'blur lazy'
  | 'input lazy'
  | 'submit lazy'
  | 'invalid-input lazy'
  | 'blur eager'
  | 'input eager'
  | 'submit eager'
  | 'invalid-input eager'
  | 'lazy blur'
  | 'lazy input'
  | 'lazy submit'
  | 'lazy invalid-input'
  | 'eager blur'
  | 'eager input'
  | 'eager submit'
  | 'eager invalid-input'
undefined

Change what type of event triggers validation to run.

any
undefined

The value used when applying validation rules.

string | number
undefined

Sets the width for the component.

Events
name
type
[MouseEvent]

Emitted when appended icon is clicked.

[MouseEvent]

Emitted when prepended icon is clicked.

[File[]]

Emitted when some of the files from user input, drop or folder selection did not pass through strict-accept filter.

[boolean]

Event that is emitted when the component’s focus state changes.

[File[]]

Event that is emitted when the component’s model changes.

Slots
{ id: ComputedRef<string> messagesId: ComputedRef<string | undefined> isDirty: ComputedRef<boolean> isDisabled: ComputedRef<boolean> isReadonly: ComputedRef<boolean> isPristine: Ref<boolean, boolean> isValid: ComputedRef<boolean | null> isValidating: Ref<boolean, boolean> hasDetails: Ref<boolean, boolean> reset: () => void resetValidation: () => void validate: () => void }
{ props: { onClick: (e: MouseEvent) => void } }
never
{ id: ComputedRef<string> messagesId: ComputedRef<string | undefined> isDirty: ComputedRef<boolean> isDisabled: ComputedRef<boolean> isReadonly: ComputedRef<boolean> isPristine: Ref<boolean, boolean> isValid: ComputedRef<boolean | null> isValidating: Ref<boolean, boolean> hasDetails: Ref<boolean, boolean> reset: () => void resetValidation: () => void validate: () => void }
never
never
{ inputNode: VNode<RendererNode, RendererElement, { [key: string]: any }> }
{ file: File; props: { 'onClick:remove': () => void } }
{ message: string }
{ id: ComputedRef<string> messagesId: ComputedRef<string | undefined> isDirty: ComputedRef<boolean> isDisabled: ComputedRef<boolean> isReadonly: ComputedRef<boolean> isPristine: Ref<boolean, boolean> isValid: ComputedRef<boolean | null> isValidating: Ref<boolean, boolean> hasDetails: Ref<boolean, boolean> reset: () => void resetValidation: () => void validate: () => void }
{ file: File; props: { 'onClick:remove': () => void } }
never

Adds an item inside the input and after input content.

Slot for the browse button.

The default Vue slot.

Slot for custom input details to modifying the display of messages.

Slot for the divider between icon and the browse button.

Slot for a custom appearance in icon section.

Define a custom native input.

Define a custom item appearance.

Slot used to customize the message content.

Adds an item outside the input and before input content.

Slot for customizing the appearance of a single file when using inset file list mode.

Slot for the component’s title content.

Exposed
HTMLInputElement
string[]
boolean
() => Promise<void>
() => Promise<void>
(silent: boolean) => Promise<string[]>

Reference to the underlying input control element.

An array of error messages that were set by the setErrors method.

Boolean indicating if the input is valid.

Resets the input value.

Resets validation of the input without modifying its value.

Validates the input’s value.