SPA: use koa-connect-history-api-fallback
This commit is contained in:
committed by
Lloyd Brookes
parent
072854ec10
commit
0e81c0529b
@ -164,6 +164,17 @@ function localWebServer (options) {
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
|
/* for any URL not matched by static (e.g. `/search`), serve the SPA */
|
||||||
|
if (options.spa) {
|
||||||
|
const historyApiFallback = require('koa-connect-history-api-fallback');
|
||||||
|
debug('SPA', options.spa)
|
||||||
|
app.use(historyApiFallback({
|
||||||
|
index: options.spa,
|
||||||
|
verbose: options.verbose,
|
||||||
|
rewrites: options.rewrite
|
||||||
|
}));
|
||||||
|
}
|
||||||
|
|
||||||
/* serve static files */
|
/* serve static files */
|
||||||
if (options.static.root) {
|
if (options.static.root) {
|
||||||
const serve = require('koa-static')
|
const serve = require('koa-static')
|
||||||
@ -176,15 +187,6 @@ function localWebServer (options) {
|
|||||||
app.use(serveIndex(options.serveIndex.path, options.serveIndex.options))
|
app.use(serveIndex(options.serveIndex.path, options.serveIndex.options))
|
||||||
}
|
}
|
||||||
|
|
||||||
/* for any URL not matched by static (e.g. `/search`), serve the SPA */
|
|
||||||
if (options.spa) {
|
|
||||||
const send = require('koa-send')
|
|
||||||
debug('SPA', options.spa)
|
|
||||||
app.use(_.all('*', function spa (ctx, route, next) {
|
|
||||||
const root = path.resolve(options.static.root) || process.cwd()
|
|
||||||
return send(ctx, options.spa, { root: root }).then(next)
|
|
||||||
}))
|
|
||||||
}
|
|
||||||
return app
|
return app
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -40,6 +40,7 @@
|
|||||||
"koa-bodyparser": "^3.0.0",
|
"koa-bodyparser": "^3.0.0",
|
||||||
"koa-compress": "^1.0.9",
|
"koa-compress": "^1.0.9",
|
||||||
"koa-conditional-get": "^1.0.3",
|
"koa-conditional-get": "^1.0.3",
|
||||||
|
"koa-connect-history-api-fallback": "^0.3.0",
|
||||||
"koa-convert": "^1.2.0",
|
"koa-convert": "^1.2.0",
|
||||||
"koa-etag": "^2.1.1",
|
"koa-etag": "^2.1.1",
|
||||||
"koa-json": "^1.1.1",
|
"koa-json": "^1.1.1",
|
||||||
|
Reference in New Issue
Block a user