@c-time/frelio-data-json-recipe (英语)
Frelio SSG + (建设- 数据- recipe ) +=。
(单位:千美元)
数据 - json -。
ランタイム依存なし。型定義と型ガードのみを提供する。
インストール
npm install @c-time/frelio-data-json-recipe
使用例
import type {
FrelioBuildDataRecipe,
ContentTypeRecipe,
DetailPageRecipe,
ListPageRecipe,
} from '@c-time/frelio-data-json-recipe'
import {
isListPageRecipeWithPagination,
isCustomFieldTransform,
} from '@c-time/frelio-data-json-recipe'
// レシピの型チェック
const recipe: FrelioBuildDataRecipe = {
contentTypes: { /* ... */ },
staticPages: [],
templateIncludes: {},
}
// ページネーションの有無を判定
if (isListPageRecipeWithPagination(listRecipe)) {
console.log(listRecipe.pagination.perPage)
}
主な型
| 页:1 | 説明 |
|---|---|
FrelioBuildDataRecipe | ビルドレシピ全体の定義 |
ContentTypeRecipe | コンテンツタイプごとの生成ルール |
DetailPageRecipe | 詳細ページの生成設定 |
ListPageRecipe | 一覧ページの生成設定(ページネーション有無で分岐) |
StaticPageRecipe | 静的ページの生成設定 |
CustomFieldTransform | フィールド値の変換定義 |
CustomFieldRelationList | 関連コンテンツの参照定義 |
CustomFieldConstant | 固定値の定義 |
RelationExpand | 関連コンテンツの展開設定 |
RecipeSort 编号 : RecipeFilter | ソート・フィルタ設定 |
TemplateIncludes | テンプレート依存関係 |
カスタムフィールドのフォーマットタイプ
string, (中文(简体) ), date, (中文(简体) ), number, (中文(简体) ), escape, (中文(简体) ), toc, (中文(简体) ), truncate, (中文(简体) ), stripHtml, (中文(简体) ), slug, (中文(简体) ), lowercase, (中文(简体) ), uppercase, (中文(简体) ), default, (中文(简体) ), count, (中文(简体) ), first, (中文(简体) ), last, (中文(简体) ), join, (中文(简体) ), url, (中文(简体) ), picture, (中文(简体) ), img, (中文(简体) ), srcset, (中文(简体) ), fileLink, (中文(简体) ), relationList, (中文(简体) ), constant 25个。
型ガード
| 関数 | 説明 |
|---|---|
isListPageRecipeWithPagination(recipe) | ページネーション付き一覧レシピか判定 |
isListPageRecipeWithoutPagination(recipe) | ページネーションなし一覧レシピか判定 |
isCustomFieldTransform(field) | 变形QQ |
isCustomFieldRelationList(field) | 关系学家 QQ |
isCustomFieldConstant(field) | 常数 : |
ライセンス
麻省理工学院