mirror of
https://github.com/ionic-team/ionic-framework.git
synced 2025-08-16 18:17:31 +08:00
fix(vue): input components update refs on ionInput (#26876)
resolves #26700
This commit is contained in:
@ -10,10 +10,19 @@ import type { App, Plugin } from "vue";
|
||||
* otherwise the binding's callback will fire before any
|
||||
* v-model values have been updated.
|
||||
*/
|
||||
const toKebabCase = (eventName: string) =>
|
||||
eventName === "ionChange"
|
||||
? "v-ion-change"
|
||||
: eventName.replace(/([a-z0-9]|(?=[A-Z]))([A-Z])/g, "$1-$2").toLowerCase();
|
||||
const toKebabCase = (eventName: string) => {
|
||||
const kebabConvert = (name: string) =>
|
||||
name.replace(/([a-z0-9]|(?=[A-Z]))([A-Z])/g, "$1-$2").toLowerCase();
|
||||
|
||||
switch (eventName) {
|
||||
case "ionInput":
|
||||
return "v-ion-input";
|
||||
case "ionChange":
|
||||
return "v-ion-change";
|
||||
default:
|
||||
return kebabConvert(eventName);
|
||||
}
|
||||
};
|
||||
|
||||
const getHelperFunctions = () => {
|
||||
return {
|
||||
|
@ -434,7 +434,7 @@ export const IonInput = /*@__PURE__*/ defineContainer<JSX.IonInput>('ion-input',
|
||||
'ionFocus',
|
||||
'ionStyle'
|
||||
],
|
||||
'value', 'v-ion-change', 'ionChange');
|
||||
'value', 'v-ion-input', 'ionInput');
|
||||
|
||||
|
||||
export const IonItem = /*@__PURE__*/ defineContainer<JSX.IonItem>('ion-item', defineIonItem, [
|
||||
@ -695,7 +695,7 @@ export const IonSearchbar = /*@__PURE__*/ defineContainer<JSX.IonSearchbar>('ion
|
||||
'ionFocus',
|
||||
'ionStyle'
|
||||
],
|
||||
'value', 'v-ion-change', 'ionChange');
|
||||
'value', 'v-ion-input', 'ionInput');
|
||||
|
||||
|
||||
export const IonSegment = /*@__PURE__*/ defineContainer<JSX.IonSegment>('ion-segment', defineIonSegment, [
|
||||
@ -818,7 +818,7 @@ export const IonTextarea = /*@__PURE__*/ defineContainer<JSX.IonTextarea>('ion-t
|
||||
'ionBlur',
|
||||
'ionFocus'
|
||||
],
|
||||
'value', 'v-ion-change', 'ionChange');
|
||||
'value', 'v-ion-input', 'ionInput');
|
||||
|
||||
|
||||
export const IonThumbnail = /*@__PURE__*/ defineContainer<JSX.IonThumbnail>('ion-thumbnail', defineIonThumbnail);
|
||||
|
Reference in New Issue
Block a user