z-router-middleware-guard
Version:
a middleware guard plugin of vue-router 4.0
2 lines (1 loc) • 1.39 kB
JavaScript
!function(e,o){"object"==typeof exports&&"undefined"!=typeof module?o(exports):"function"==typeof define&&define.amd?define(["exports"],o):o((e="undefined"!=typeof globalThis?globalThis:e||self).ZOssImage={})}(this,(function(e){"use strict";var o=function(){function e(e){this.hook=e,this.beforeQueue=[],this.afterQueue=[],this.registered=!1}var o=e.prototype;return o.runBefore=function(e,o,t,r){var f=this;if(0===r.length)t();else{var n=r.shift();n&&n(e,o,(function(n){void 0!==n?!1===n?t():t(n):f.runBefore(e,o,t,r)}))}},o.runAfter=function(e,o,t,r){var f=this;if(0===r.length)t();else{var n=r.shift();n&&n(e,o,(function(n){(void 0===n||n)&&f.runAfter(e,o,t,r)}))}},o.use=function(){for(var e=arguments.length,o=new Array(e),t=0;t<e;t++)o[t]=arguments[t];"beforeEach"===this.hook||"beforeResolve"===this.hook?this.beforeQueue=this.beforeQueue.concat(o):this.afterQueue=this.afterQueue.concat(o)},o.register=function(e){var o=this;this.registered||("beforeEach"===this.hook||"beforeResolve"===this.hook?e[this.hook]((function(e,t,r){o.runBefore(e,t,r,[].concat(o.beforeQueue))})):e[this.hook]((function(e,t){o.runAfter(e,t,(function(){}),[].concat(o.afterQueue))})),this.registered=!0)},e}(),t=new o("beforeEach"),r=new o("beforeResolve"),f=new o("afterEach");e.afterEachHook=f,e.beforeEachHook=t,e.beforeResolveHook=r,e.default=o,Object.defineProperty(e,"__esModule",{value:!0})}));