1
0
mirror of https://github.com/PanJiaChen/vue-element-admin.git synced 2025-08-10 20:39:48 +08:00

Add support to conditional for event handler (#474)

This commit is contained in:
Yamel Senih 2020-04-30 00:44:03 -04:00 committed by GitHub
parent 86fd3a432a
commit 49e82232f9
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 42 additions and 27 deletions

View File

@ -49,34 +49,42 @@ export const fieldMixin = {
this.handleChange(value)
},
focusGained(value) {
this.$store.dispatch('notifyFocusGained', {
containerUuid: this.metadata.containerUuid,
columnName: this.metadata.columnName,
value: this.value
})
if (this.metadata.handleFocusGained) {
this.$store.dispatch('notifyFocusGained', {
containerUuid: this.metadata.containerUuid,
columnName: this.metadata.columnName,
value: this.value
})
}
},
focusLost(value) {
this.$store.dispatch('notifyFocusLost', {
containerUuid: this.metadata.containerUuid,
columnName: this.metadata.columnName,
value: this.value
})
if (this.metadata.handleFocusLost) {
this.$store.dispatch('notifyFocusLost', {
containerUuid: this.metadata.containerUuid,
columnName: this.metadata.columnName,
value: this.value
})
}
},
keyPressed(value) {
this.$store.dispatch('notifyKeyPressed', {
containerUuid: this.metadata.containerUuid,
columnName: this.metadata.columnName,
value: value.key,
keyCode: value.keyCode
})
if (this.metadata.handleKeyPressed) {
this.$store.dispatch('notifyKeyPressed', {
containerUuid: this.metadata.containerUuid,
columnName: this.metadata.columnName,
value: value.key,
keyCode: value.keyCode
})
}
},
keyReleased(value) {
this.$store.dispatch('notifyKeyReleased', {
containerUuid: this.metadata.containerUuid,
columnName: this.metadata.columnName,
value: value.key,
keyCode: value.keyCode
})
if (this.metadata.handleKeyReleased) {
this.$store.dispatch('notifyKeyReleased', {
containerUuid: this.metadata.containerUuid,
columnName: this.metadata.columnName,
value: value.key,
keyCode: value.keyCode
})
}
},
/**
* @param {mixed} value, main value in component
@ -115,11 +123,13 @@ export const fieldMixin = {
isChangedOldValue
}
// Global Action performed
this.$store.dispatch('notifyActionPerformed', {
containerUuid: this.metadata.containerUuid,
columnName: this.metadata.columnName,
value: newValue
})
if (this.metadata.handleActionPerformed) {
this.$store.dispatch('notifyActionPerformed', {
containerUuid: this.metadata.containerUuid,
columnName: this.metadata.columnName,
value: newValue
})
}
if (this.metadata.inTable) {
this.$store.dispatch('notifyCellTableChange', {
...sendParameters,

View File

@ -309,6 +309,11 @@ export function getFieldTemplate(overwriteDefinition) {
mandatoryLogic: undefined,
readOnlyLogic: undefined,
parentFieldsList: undefined,
handleFocusGained: false,
handleFocusLost: false,
handleKeyPressed: false,
handleKeyReleased: false,
handleActionPerformed: true,
dependentFieldsList: [],
reference: {
tableName: '',