29 lines
702 B
TypeScript
29 lines
702 B
TypeScript
import { readFile } from 'node:fs/promises'
|
|
|
|
export default defineEventHandler(async (event) => {
|
|
const slug = getRouterParam(event, 'slug')
|
|
|
|
if (!slug) {
|
|
throw createError({
|
|
statusCode: 400,
|
|
statusMessage: 'Slug is required'
|
|
})
|
|
}
|
|
|
|
try {
|
|
// Читаем markdown файл из папки content/books
|
|
// slug теперь представляет номер главы (1, 2, 3, etc.)
|
|
const content = await readFile(`content/books/${slug}.md`, 'utf-8')
|
|
|
|
return {
|
|
content,
|
|
slug,
|
|
chapter: slug
|
|
}
|
|
} catch (error) {
|
|
throw createError({
|
|
statusCode: 404,
|
|
statusMessage: 'Глава не найдена'
|
|
})
|
|
}
|
|
})
|