-
-
Notifications
You must be signed in to change notification settings - Fork 22
Vue 3 support #55
Copy link
Copy link
Closed
Description
I have released the official Vue 3 Blitzar! 🎉
- See new docs:
https://blitzar.cycraft.co/
--
- double check wether or not the documentation of blitzar covers all use cases & features for the Vue 2 version
- recreate the documentation in Vite + Vue 3 with all the markdown content ready.
- start implementing all the examples of the docs one by one.
- completely rewrite BlitzForm, BlitzTable, BlitzListForm based on this rewrite
- keep an ongoing list of breaking changes
--
Breaking Changes For Blitzar + Vue 3
BlitzTable
BlitzTable was completely rewritten and has changed a lot.
- Please check out the new documentation on BlitzTable and adjust accordingly.
- Some features are not yet re-implemented like conditional/dynamic styles & classes but they will be soon
BlitzForm
renamed terminology
@inputto@update:modelValue- reason: Vue 3 requirement
@field-inputto@updateField- reason:
update-fieldmakes sense with Vue 3 terminology (because Vue 3 doesn't rely on@inputanymore)
- reason:
@input-cellto@updateCell- reason: same as above
fieldInput(the function) toupdateField- reason: same as above
evaluatedPropstodynamicProps- reason: clarity — Dynamic Props is a bit easier to understand imo.
mode: 'view'tomode: 'readonly'- reason: clarity — closer to HTML5 readonly attribute
upgrade strategy for the above:
- find and replace
Deprecated props
- deprecate
rulesvalidation array per field- reason: we do not use Quasar under the hood anymore,
ruleswas only used because Quasar's QField uses it for Validation - I have thought a long time about the best way of implementing Validation, looking at VeeValidate, Vuelidate, Quasar, Vuetify and others, and have realised we already have a very simple implementation of form validation via Dynamic Props... So to reduce codebase complexity, I have added a new prop called
errorwhere you can simple pass a validation function much like therulesprop before. The difference is, it's a single function (to be marked asdynamicProps: ['error']) and you make it a single function that returnsnullif there's no error, or the error you want to display when there is one. - upgrade strategy: Read the new Documentation on Validation here. Please scroll to "validation" at the bottom
- reason: we do not use Quasar under the hood anymore,
// before
{
rules: [(val) => Number(val) > 18 || 'no minors allowed']
}
// after
{
dynamicProps: ['error'],
error: (val) => Number(val) > 18 ? null : 'no minors allowed'
}-
deprecate prop
internalErrorsForarray of field-names- reason: reduce codebase complexity & delete less common options to reduce size
- upgrade strategy: just add
internalErrors: trueto the fields you need this
-
deprecate prop
validatorglobal validation function- reason: reduce codebase complexity & delete less common options to reduce size
- upgrade strategy: just add error validation to each field in your schema instead
-
deprecate
mode: 'add'- reason: reduce complexity
- upgrade strategy:
- check if your forms rely on
mode: 'add'by doing a global search foradd - write custom logic to difference between
mode: 'add'andmode: 'edit'
- check if your forms rely on
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels