Angular MatDialog无法关闭ES5(Chrome v.30)

时间:2019-07-12 22:48:59

标签: angular typescript angular-material ecmascript-5

我的客户使用旧的chrome版本30 我使用了素材angular(mat-dialog)Angular 8打字稿3.4.0无法关闭模态,但是可以单击打开以显示法线

点击关闭函数this.dialogRef.close()

    ERROR TypeError {} vendor.js:75980
defaultErrorLoggervendor.js:75980
push../node_modules/@angular/core/fesm5/core.js.ErrorHandler.handleErrorvendor.js:76028
(anonymous function)vendor.js:96246
push../node_modules/zone.js/dist/zone.js.ZoneDelegate.invokezone.js:391
push../node_modules/zone.js/dist/zone.js.Zone.runzone.js:150
push../node_modules/@angular/core/fesm5/core.js.NgZone.runOutsideAngularvendor.js:95326
push../node_modules/@angular/core/fesm5/core.js.ApplicationRef.tickvendor.js:96246
(anonymous function)vendor.js:96107
push../node_modules/zone.js/dist/zone.js.ZoneDelegate.invokezone.js:391
zone._inner.zone._inner.fork.onInvokevendor.js:95367
push../node_modules/zone.js/dist/zone.js.ZoneDelegate.invokezone.js:390
push../node_modules/zone.js/dist/zone.js.Zone.runzone.js:150
push../node_modules/@angular/core/fesm5/core.js.NgZone.runvendor.js:95281
ApplicationRef._zone.onMicrotaskEmpty.subscribe.nextvendor.js:96107
schedulerFnvendor.js:93012
push../node_modules/rxjs/_esm5/internal/Subscriber.js.SafeSubscriber.__tryOrUnsubvendor.js:176571
push../node_modules/rxjs/_esm5/internal/Subscriber.js.SafeSubscriber.nextvendor.js:176509
push../node_modules/rxjs/_esm5/internal/Subscriber.js.Subscriber._nextvendor.js:176455
push../node_modules/rxjs/_esm5/internal/Subscriber.js.Subscriber.nextvendor.js:176432
push../node_modules/rxjs/_esm5/internal/Subject.js.Subject.nextvendor.js:176198
push../node_modules/@angular/core/fesm5/core.js.EventEmitter.emitvendor.js:92996
checkStablevendor.js:95336
onLeavevendor.js:95403
zone._inner.zone._inner.fork.onInvokeTaskvendor.js:95361
push../node_modules/zone.js/dist/zone.js.ZoneDelegate.invokeTaskzone.js:422
push../node_modules/zone.js/dist/zone.js.Zone.runTaskzone.js:195
push../node_modules/zone.js/dist/zone.js.ZoneTask.invokeTaskzone.js:498
invokeTaskzone.js:1693
globalZoneAwareCallback

我的控制台函数this.dialogRef.close()

function (dialogResult) {
    var _this = this;
    this._result = dialogResult;
    // Transition the backdrop in parallel to the dialog.
    this._containerInstance._animationStateChanged.pipe(Object(rxjs_operators__WEBPACK_IMPORTED_MODULE_8__["filter"])((/**
     * @param {?} event
     * @return {?}
     */
    function (event) { return event.phaseName === 'start'; })), Object(rxjs_operators__WEBPACK_IMPORTED_MODULE_8__["take"])(1))
        .subscribe((/**
     * @param {?} event
     * @return {?}
     */
    function (event) {
        _this._beforeClosed.next(dialogResult);
        _this._beforeClosed.complete();
        _this._overlayRef.detachBackdrop();
        // The logic that disposes of the overlay depends on the exit animation completing, however
        // it isn't guaranteed if the parent view is destroyed while it's running. Add a fallback
        // timeout which will clean everything up if the animation hasn't fired within the specified
        // amount of time plus 100ms. We don't need to run this outside the NgZone, because for the
        // vast majority of cases the timeout will have been cleared before it has the chance to fire.
        _this._closeFallbackTimeout = setTimeout((/**
         * @return {?}
         */
        function () {
            _this._overlayRef.dispose();
        }), event.totalTime + 100);
    }));
    this._containerInstance._startExitAnimation();
}

0 个答案:

没有答案