diff --git a/packages/toast/index.js b/packages/toast/index.js index d10a2a78d..904707008 100644 --- a/packages/toast/index.js +++ b/packages/toast/index.js @@ -33,10 +33,6 @@ function createInstance() { // transform toast options to popup props function transformer(options) { options.overlay = options.mask; - if (options.forbidClick && !options.overlay) { - options.overlay = true; - options.overlayStyle = { background: 'transparent' }; - } return options; } diff --git a/packages/toast/test/index.spec.js b/packages/toast/test/index.spec.js index 9782fc864..5e89a2387 100644 --- a/packages/toast/test/index.spec.js +++ b/packages/toast/test/index.spec.js @@ -4,12 +4,20 @@ import { TransitionStub } from '@vue/test-utils'; Vue.component('transition', TransitionStub); -test('create a forbidClick toast', () => { +test('create a forbidClick toast', done => { const toast = Toast({ forbidClick: true }); expect(toast.$el.outerHTML).toMatchSnapshot(); + setTimeout(() => { + expect(document.body.classList.contains('van-toast--unclickable')).toBeTruthy(); + toast.forbidClick = false; + setTimeout(() => { + expect(document.body.classList.contains('van-toast--unclickable')).toBeFalsy(); + done(); + }); + }); }); it('toast disappeared after duration', (done) => { @@ -20,7 +28,7 @@ it('toast disappeared after duration', (done) => { setTimeout(() => { expect(toast.$el.style.display).toEqual('none'); done(); - }, 500); + }, 50); }); test('clear toast', () => { diff --git a/packages/toast/toast.vue b/packages/toast/toast.vue index 86ff81310..873c9931b 100644 --- a/packages/toast/toast.vue +++ b/packages/toast/toast.vue @@ -1,12 +1,12 @@