fix(ImagePreview): should emit change event when reset to start position (#4320)

This commit is contained in:
neverland 2019-09-02 12:35:44 +08:00 committed by GitHub
parent db7a91d066
commit 9adf00b8a1
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -104,12 +104,11 @@ export default createComponent({
watch: { watch: {
value() { value() {
this.resetScale(); this.setActive(this.startPosition);
this.active = this.startPosition;
}, },
startPosition(active) { startPosition(active) {
this.active = active; this.setActive(active);
} }
}, },
@ -233,10 +232,13 @@ export default createComponent({
} }
}, },
onSwipeChange(active) { setActive(active) {
this.resetScale(); this.resetScale();
this.active = active;
this.$emit('change', active); if (active !== this.active) {
this.active = active;
this.$emit('change', active);
}
}, },
resetScale() { resetScale() {
@ -275,7 +277,7 @@ export default createComponent({
indicatorColor="white" indicatorColor="white"
initialSwipe={this.startPosition} initialSwipe={this.startPosition}
showIndicators={this.showIndicators} showIndicators={this.showIndicators}
onChange={this.onSwipeChange} onChange={this.setActive}
> >
{images.map((image, index) => { {images.map((image, index) => {
const props = { const props = {