@nextcloud/vue
Advanced tools
Changelog
v8.23.0 (2025-02-13)
The individual import path of components, composables, directives, and functions was changed.
The type of import is (e.g. components
) is now lowercase and the dist
will be omitted.
For example to import the NcButton
component the path has changed:
// Old import
import NcButton from '@nextcloud/vue/dist/Components/NcButton.js'
// New way to import
import NcButton from '@nextcloud/vue/components/NcButton'
The old import paths are still valid, but deprecated and will be removed in version 9.
#default
slot for leading icon is now deprecated in components NcInputField
, NcTextField
, NcPasswordField
. Use #icon
slot instead.
NcActionRadio
is now expecting String|Number in v-model
directive (to compare with passed value
) instead of Boolean. Consider it for migration.
Some boolean props have been deprecated in favor of alternatives with default value false
.
This allows to use shorthand notation on the template, as a prop with a default value of false
will be set to true
if it is set (without any value) in the template,
similar to native HTML boolean attributes.
Following components have been adjusted:
| Component | Deprecated prop | New alternative |
|---------------|------------------------|-----------------|
| NcModal
| enableSwipe
| disableSwipe
|
|NcAppContent
| allowSwipeNavigation
| disabledSwipe
|
dist
#6385 (susnux)#icon
slot for forward compatibility with v9, #default
slot is deprecated #6399 (ShGKme)modelValue
to behave like NcCheckboxRadioSwitch #6264 #6470 (Antreesy)mousemove
listener for auto focus elements #6475 (susnux)after-show
after focus-trap
init to correctly return focus #6342 (ShGKme)csstools/use-logical
#6419 (ShGKme)Changelog
v8.22.0 (2024-12-20)
n
hotkey to toggle navigation #6311 (skjnldsv)SHIFT
and add caseSensitive
, custom event filter options #6301 (Antreesy)Changelog
v8.21.0 (2024-11-21)
v-model
happens first to avoid regression #6234 (ShGKme)Changelog
v8.20.0 (2024-10-29)
Now you can use v-model
directive, :model-value
prop, and @update:model-value
(@update:modelValue
) event in all data input components to have compatibility with v9 in the future.
<!-- Only v8 (Vue 2) -->
<NcTextField :value.sync="username" />
<!-- Compatible with both v8 (Vue 2) and v9 (Vue 3) -->
<NcTextField v-model="username" />
<!-- same as -->
<NcTextField :model-value="username" @update:model-value="username = $event" />
If you already use v-model
with a custom writable computed on :value.sync
components before, it might not work as expected anymore. Make sure to remove or adjust it before update.
See the full list in v9 breaking changes.
v-model
support for input-like components #5418 (kyteinsky)v-model
props/events #6172 (ShGKme)isDarkTheme
functions and composables #5698 (ShGKme)spawnDialog
function #6195 (susnux)Changelog
v8.19.0 (2024-09-16)
closed
event only when the actions are fully closed #6065 (susnux)Changelog
v8.18.0 (2024-09-12)
false
from callback to keep dialog open #6005 (susnux)Escape
should always close the actions #6037 (susnux)oneline
mode apply only to the content name #6039 (GVodyanov)Changelog
v8.17.1 (2024-08-30)