fix:修改关闭按钮 不提示弹窗的问题
This commit is contained in:
@@ -162,9 +162,9 @@ export const cancelWithChange = {
|
|||||||
if (!binding.value || !binding.value.obj) return
|
if (!binding.value || !binding.value.obj) return
|
||||||
const unsavedChange = localStorage.getItem('nz-unnsaved-change')
|
const unsavedChange = localStorage.getItem('nz-unnsaved-change')
|
||||||
const oldValue = JSON.parse(JSON.stringify(binding.value.obj))
|
const oldValue = JSON.parse(JSON.stringify(binding.value.obj))
|
||||||
|
el.__newValue__ = oldValue
|
||||||
function domClick (e) {
|
function domClick (e) {
|
||||||
const newValue = JSON.parse(JSON.stringify(binding.value.obj))
|
if (unsavedChange == 'on' && !isEqual(oldValue, el.__newValue__)) {
|
||||||
if (unsavedChange == 'on' && !isEqual(oldValue, newValue)) {
|
|
||||||
MessageBox.confirm(i18n.t('tip.confirmCancel'), {
|
MessageBox.confirm(i18n.t('tip.confirmCancel'), {
|
||||||
confirmButtonText: i18n.t('tip.yes'),
|
confirmButtonText: i18n.t('tip.yes'),
|
||||||
cancelButtonText: i18n.t('tip.no'),
|
cancelButtonText: i18n.t('tip.no'),
|
||||||
@@ -181,6 +181,9 @@ export const cancelWithChange = {
|
|||||||
el.__vueDomClick__ = domClick
|
el.__vueDomClick__ = domClick
|
||||||
el.addEventListener('click', domClick)
|
el.addEventListener('click', domClick)
|
||||||
},
|
},
|
||||||
|
update (el, binding, vnode) {
|
||||||
|
el.__newValue__ = binding.value.obj
|
||||||
|
},
|
||||||
unbind: function (el, binding) {
|
unbind: function (el, binding) {
|
||||||
// 解除事件监听
|
// 解除事件监听
|
||||||
document.removeEventListener('click', el.__vueDomClick__)
|
document.removeEventListener('click', el.__vueDomClick__)
|
||||||
|
|||||||
Reference in New Issue
Block a user