Skip to content

Commit

Permalink
feat: add serve-placeholder
Browse files Browse the repository at this point in the history
  • Loading branch information
pi0 committed Apr 4, 2022
1 parent b6cca1a commit 689aad0
Show file tree
Hide file tree
Showing 3 changed files with 24 additions and 14 deletions.
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,7 @@
"rollup-plugin-visualizer": "^5.6.0",
"scule": "^0.2.1",
"semver": "^7.3.5",
"serve-placeholder": "^1.2.4",
"serve-placeholder": "^2.0.1",
"serve-static": "^1.14.2",
"std-env": "^3.0.1",
"table": "^6.8.0",
Expand Down
17 changes: 10 additions & 7 deletions src/dev/server.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import { debounce } from 'perfect-debounce'
import { CompatibilityEvent, createApp, eventHandler } from 'h3'
import httpProxy from 'http-proxy'
import { listen, Listener, ListenOptions } from 'listhen'
// import servePlaceholder from 'serve-placeholder'
import { servePlaceholder } from 'serve-placeholder'
import serveStatic from 'serve-static'
import { resolve } from 'pathe'
import { joinURL } from 'ufo'
Expand Down Expand Up @@ -98,15 +98,18 @@ export function createDevServer (nitro: Nitro) {

// Serve asset dirs
for (const asset of nitro.options.publicAssets) {
app.use(joinURL(nitro.options.app.baseURL, asset.baseURL), serveStatic(asset.dir, {
fallthrough: asset.fallthrough
}))
const url = joinURL(nitro.options.app.baseURL, asset.baseURL)
app.use(url, serveStatic(asset.dir))
if (!asset.fallthrough) {
app.use(url, servePlaceholder())
}
}

// serve placeholder 404 assets instead of hitting SSR
// app.use(nitro.options.publicPath, servePlaceholder())
// Serve placeholder 404 assets instead of hitting SSR
// TODO: Option to opt-out
app.use(nitro.options.app.baseURL, servePlaceholder({ skipUnknown: true }))

// SSR Proxy
// Worker proxy
const proxy = httpProxy.createProxy()
app.use(eventHandler(async (event) => {
await reloadPromise
Expand Down
19 changes: 13 additions & 6 deletions yarn.lock
Original file line number Diff line number Diff line change
Expand Up @@ -2023,6 +2023,13 @@ __metadata:
languageName: node
linkType: hard

"defu@npm:^6.0.0":
version: 6.0.0
resolution: "defu@npm:6.0.0"
checksum: 3c24ef0009b796e32a1655a23fc1f11a79b42012255b6bc88889242da77b7e45bfa4293d9661d28f3f6c12c931309e18f5047efa492670585a3da768887cea74
languageName: node
linkType: hard

"delayed-stream@npm:~1.0.0":
version: 1.0.0
resolution: "delayed-stream@npm:1.0.0"
Expand Down Expand Up @@ -5030,7 +5037,7 @@ __metadata:
rollup-plugin-visualizer: ^5.6.0
scule: ^0.2.1
semver: ^7.3.5
serve-placeholder: ^1.2.4
serve-placeholder: ^2.0.1
serve-static: ^1.14.2
std-env: ^3.0.1
table: ^6.8.0
Expand Down Expand Up @@ -6214,12 +6221,12 @@ __metadata:
languageName: node
linkType: hard

"serve-placeholder@npm:^1.2.4":
version: 1.2.4
resolution: "serve-placeholder@npm:1.2.4"
"serve-placeholder@npm:^2.0.1":
version: 2.0.1
resolution: "serve-placeholder@npm:2.0.1"
dependencies:
defu: ^5.0.0
checksum: d1464680f31eacdff37efacb12428b354fc43a259dcf75d1d7affc2445abbbe5ff101af336d5816ebc77e2ab8f964fae11cec074c1af64c9750956ee08430143
defu: ^6.0.0
checksum: 19bbaba041634a3e7d51e7336667808688faed1ffa1983b98c94d9c96951eb4e028f33cd086c7564450eb8b8d374e197c5efbf5fd7e5521a5246f9200720e496
languageName: node
linkType: hard

Expand Down

0 comments on commit 689aad0

Please sign in to comment.