fix: fix compile error for non-latin slug blog posts

This commit is contained in:
ttyS3 2023-07-23 23:35:39 +08:00
parent 6990bb210a
commit 44ffc642cf
No known key found for this signature in database
GPG Key ID: A83C6C687C9E7888

View File

@ -14,7 +14,7 @@ export async function generateMetadata({
params: { slug: string[] }
}): Promise<Metadata | undefined> {
const slug = params.slug.join('/')
const post = allBlogs.find((p) => p.slug === slug)
const post = allBlogs.find((p) => encodeURIComponent(p.slug) === slug)
const authorList = post?.authors || ['default']
const authorDetails = authorList.map((author) => {
const authorResults = allAuthors.find((p) => p.slug === author)
@ -69,11 +69,12 @@ export const generateStaticParams = async () => {
export default async function Page({ params }: { params: { slug: string[] } }) {
const slug = params.slug.join('/')
console.log('begin generate for slug: %o', slug)
const sortedPosts = sortedBlogPost(allBlogs) as Blog[]
const postIndex = sortedPosts.findIndex((p) => p.slug === slug)
const postIndex = sortedPosts.findIndex((p) => encodeURIComponent(p.slug) === slug)
const prev = coreContent(sortedPosts[postIndex + 1])
const next = coreContent(sortedPosts[postIndex - 1])
const post = sortedPosts.find((p) => p.slug === slug) as Blog
const post = sortedPosts.find((p) => encodeURIComponent(p.slug) === slug) as Blog
const authorList = post?.authors || ['default']
const authorDetails = authorList.map((author) => {
const authorResults = allAuthors.find((p) => p.slug === author)