link prefetching
This commit is contained in:
parent
481eac817e
commit
18e8883063
@ -1,5 +1,6 @@
|
||||
<script context="module">
|
||||
export async function load({ page }) {
|
||||
try {
|
||||
let post = await import(`./_posts/${page.params.slug}.svx`);
|
||||
return {
|
||||
props: {
|
||||
@ -8,6 +9,13 @@
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (err) {
|
||||
return {
|
||||
status: 404,
|
||||
error: `Not found: ${page.path}`,
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<script>
|
||||
|
@ -31,9 +31,9 @@
|
||||
|
||||
<div id="header">
|
||||
<nav id="nav-main">
|
||||
<a href="/">Home</a>
|
||||
<a href="/posts">Posts</a>
|
||||
<a href="#">About</a>
|
||||
<a sveltekit:prefetch href="/">Home</a>
|
||||
<a sveltekit:prefetch href="/posts">Posts</a>
|
||||
<a sveltekit:prefetch href="#">About</a>
|
||||
</nav>
|
||||
</div>
|
||||
|
||||
|
@ -1,19 +1,12 @@
|
||||
const posts = import.meta.globEager('./_posts/*.svx');
|
||||
|
||||
// let postData = [];
|
||||
export let postData = [];
|
||||
|
||||
// for (const path in posts) {
|
||||
// const slug = path.slice(9, -4)
|
||||
// posts[path].metadata.slug = slug;
|
||||
// postData.push(posts[path].metadata);
|
||||
// }
|
||||
|
||||
export let postData = import.meta.glob('./_posts/*.svx');
|
||||
export const postData = Object.entries(posts).map((path, post) => {
|
||||
const slug = path.slice(9, -4);
|
||||
post.metadata.slug = slug;
|
||||
return post.metadata;
|
||||
})
|
||||
for (const path in posts) {
|
||||
const slug = path.slice(9, -4)
|
||||
posts[path].metadata.slug = slug;
|
||||
postData.push(posts[path].metadata);
|
||||
}
|
||||
postData.sort((a, b) => {
|
||||
// sorting in reverse, so we flip the intuitive order
|
||||
if (a.date > b.date) return -1;
|
||||
|
@ -1,7 +1,7 @@
|
||||
<script context="module">
|
||||
export async function load({ fetch }) {
|
||||
const resp = await fetch('/latest.json');
|
||||
const metadata = (await resp.json());
|
||||
const metadata = await resp.json();
|
||||
const post = await import(`./_posts/${metadata.slug}.svx`);
|
||||
return {
|
||||
props: {
|
||||
|
@ -1,5 +1,5 @@
|
||||
import { postData } from './all.json.js';
|
||||
|
||||
export async function get() {
|
||||
return postData[0];
|
||||
return {body: postData[0]};
|
||||
}
|
@ -31,7 +31,7 @@
|
||||
<h1>All Posts</h1>
|
||||
{#each postData as post}
|
||||
<p>
|
||||
<a class="post-link" href="/{post.slug}"><h3>{post.title}</h3></a>
|
||||
<a sveltekit:prefetch class="post-link" href="/{post.slug}"><h3>{post.title}</h3></a>
|
||||
</p>
|
||||
{/each}
|
||||
</div>
|
||||
|
Loading…
x
Reference in New Issue
Block a user