I want to go from this code in my index.js
app.use(require('sass-middleware').middleware({
src: path.resolve(__dirname, '../'),
dest: path.resolve(__dirname, '../public')
}));
app.use(require('browserify-dev-middleware')({
src: path.resolve(__dirname, '../'),
transforms: [require('jadeify')]
}));
to this:
app.use(require('asset-pipeline-dev-middelware'));
but I just don't know how to make the function that is passed in to app.use be a proxy for the other two middleware functions.
Something like this fills wrong, or is it fine?
require('asset-pipeline-dev-middelware')(app);
You can group the middlewares like this:
//asset-pipeline-dev-middelware.js
var middleware1 = require('first-middleware')
var middleware2 = require('second-middleware')
function(req, res, next){
middleware1(req, res, function(err){
if(err) return next(err);
middleware2(req, res, next)
})
}
then use it in app just like you mentioned:
app.use(require('asset-pipeline-dev-middelware'));
this also works because app.use
can handle arrays
// asset-pipeline-dev-middelware.js
var middleware1 = require('first-middleware')
var middleware2 = require('second-middleware')
module.export = [middleware1, middleware2];
// index.js
app.use(require('asset-pipeline-dev-middelware'));
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.