From 5973aab9167813f0ca0d4acf82d5d2af3a837b06 Mon Sep 17 00:00:00 2001 From: Vion Date: Thu, 20 Jan 2022 12:49:07 +0800 Subject: [PATCH] addressInput bug fixed --- rc-busness/components/addressInput.vue | 38 ++++++++++++++++++++++---- 1 file changed, 32 insertions(+), 6 deletions(-) diff --git a/rc-busness/components/addressInput.vue b/rc-busness/components/addressInput.vue index 9045bafe..a52b4471 100644 --- a/rc-busness/components/addressInput.vue +++ b/rc-busness/components/addressInput.vue @@ -41,6 +41,7 @@ export default { props:["defaultValues"], data(){ return{ + animationTimer:undefined, displayValue:"", returnValue:"", returnValueArr:[], @@ -158,7 +159,7 @@ export default { if(obj.id.indexOf(provinceId)<0) { console.log('500 : error via checking validatePickedValues'); - _self.returnValueArr[index]={}; + _self.returnValueArr.splice(index,1); } else { @@ -172,7 +173,7 @@ export default { if(areaId && obj.id.indexOf(areaId)<0) { console.log('501 : error via checking validatePickedValues'); - _self.returnValueArr[index]={}; + _self.returnValueArr.splice(index,1); } else{ validatedIndex=index; @@ -230,9 +231,15 @@ export default { //TODO show warning here let errorEle=document.querySelector(".ts-area-picker-values"); errorEle.classList.add("error"); - setTimeout(function(){ - errorEle.classList.remove("error"); - },2000); + let _self = this; + if(!this.animationTimer) + { + this.animationTimer = setTimeout(function(){ + errorEle.classList.remove("error"); + clearTimeout(_self.animationTimer); + _self.animationTimer=undefined; + },2000); + } tabIndex=lastValidatedTabIndex+1; } this.curDisplayingColIndex=tabIndex; @@ -304,6 +311,23 @@ export default { .ts-area-picker-values{ width:100%; height:100%; + &.error{ + position:relative; + width:100%; + height:78%; + &:after{ + content: " "; + position:absolute; + width:100%; + height:100%; + left:0; + top:0; + animation-name: flash-error; + animation-iteration-count: 2; + animation-duration: .5s; + animation-direction: forwards; + } + } ul{ padding:1rem 2.5rem 2rem 2.5rem; margin:0; @@ -396,10 +420,12 @@ export default { @keyframes flash-error { from { - opacity:.6; + opacity:0; + background-color:#fff; } to { opacity:.3; + background-color:#E2001A; } } \ No newline at end of file