egg-core
Advanced tools
Comparing version 1.2.0 to 1.3.0
1.3.0 / 2016-11-25 | ||
================== | ||
* feat: make app middlewares also support enable (#33) | ||
1.2.0 / 2016-11-21 | ||
@@ -3,0 +8,0 @@ ================== |
@@ -65,15 +65,11 @@ 'use strict'; | ||
mw._name = name; | ||
// core middleware support options.enable, options.ignore and options.match | ||
const isCoreMiddleware = this.config.coreMiddleware.indexOf(name) >= 0; | ||
if (isCoreMiddleware) { | ||
if (options.enable !== false) { | ||
app.use(wrapCoreMiddleware(mw, options)); | ||
debug('Use core middleware: %s with options: %j', name, options); | ||
} | ||
// middlewares support options.enable, options.ignore and options.match | ||
mw = wrapMiddleware(mw, options); | ||
if (mw) { | ||
app.use(mw); | ||
debug('Use middleware: %s with options: %j', name, options); | ||
this.options.logger.info('[egg:loader] Use middleware: %s', name); | ||
} else { | ||
app.use(mw); | ||
debug('Use app middleware: %s with options: %j', name, options); | ||
this.options.logger.info('[egg:loader] Disable middleware: %s', name); | ||
} | ||
this.options.logger.info('[egg:loader] Use %s middleware: %s', isCoreMiddleware ? 'core' : 'app', name); | ||
} | ||
@@ -86,3 +82,6 @@ | ||
function wrapCoreMiddleware(mw, options) { | ||
function wrapMiddleware(mw, options) { | ||
if (options.enable === false) return null; | ||
if (!options.match && !options.ignore) return mw; | ||
const match = pathMatching(options); | ||
@@ -93,4 +92,4 @@ const fn = function* (next) { | ||
}; | ||
fn._name = mw._name + 'coreMiddlewareWrapper'; | ||
fn._name = mw._name + 'middlewareWrapper'; | ||
return fn; | ||
} |
{ | ||
"name": "egg-core", | ||
"version": "1.2.0", | ||
"version": "1.3.0", | ||
"description": "A core Pluggable framework based on koa", | ||
@@ -5,0 +5,0 @@ "main": "index.js", |
60717
1632