Si vous créez du contenu dans Markdown ou utilisez un CMS comme NetLifyCMS qui publie des fichiers Markdown, Jdown peut transformer le contenu en JSON contenant du HTML au moment de la construction, prêt à être consommé dans les modèles.
$ npm install jdown --save-dev
const jdown = require ( 'jdown' ) ;
jdown ( 'path/to/content' ) . then ( content => console . log ( content ) ) ;
Appelez JDOWN avec le chemin de votre contenu Markdown (par rapport à la racine du projet) et il convertira votre contenu en JSON.
La structure du JSON que JDOR est dépend de la structure des fichiers du dossier de contenu.
Sera transformé en un objet, les objets de fichier contiendront toujours un contents
et une propriété fileInfo
...
Sera transformé en objets individuels puis regroupés au sein d'un objet parent qui a le même nom que le dossier parent (n'allez pas plus d'un niveau de profondeur).
Pour générer des tableaux d'objets de fichier, un dossier nommé "Collections" peut être créé. Le dossier des collections ne doit contenir que des sous-dossiers, chacun puis chaque fichier dans un sous-dossier sera ajouté à un tableau d'objets.
YAML Frontmatter peut être inclus en haut de tous les fichiers partout et il sera ajouté au JSON généré en tant que propriétés individuelles.
---
title : Example frontmatter
---
Example Markdown Content
Type: string
Requis
Chemin vers un dossier contenant des fichiers Markdown avec une structure de dossier qui correspond aux directives ci-dessus. Le chemin doit être relatif à la racine du projet, donc si votre contenu était dans /Users/username/project/src/content
, vous utiliseriez jdown('src/content')
.
Type: object
Type: object
Options à passer à marqué, Jdown prend en charge toutes les options marquées disponibles qui peuvent être utilisées pour contrôler la façon dont la marque est analysée.
Type: object
Options d'analyse d'actifs. L'utilisation de Jdown pour analyser les actifs est entièrement facultative, mais il est livré avec quelques avantages, notamment:
Tous les actifs statiques doivent être placés dans les dossiers /assets
. Les dossiers d'actifs peuvent être placés dans le répertoire de contenu de niveau supérieur et / ou ses sous-répertoires. Dans le contenu Markdown, les actifs peuvent ensuite être référencés à l'aide de ![](./assets/my-asset.png)
où my-asset.png
est un actif placé dans le dossier AN /assets
.
L'objet Options Assets peut contenir les propriétés suivantes:
Propriété | Taper | Défaut | Description |
---|---|---|---|
sortir | chaîne | ./publique | Le répertoire JDOWN sortira les actifs traités pour |
chemin | chaîne | / / | Path accessible publiquement JDORD PLAPENDRE AUX NOM DE FICHIERS DE SORTIE |
PNG | objet | indéfini | Options pour passer dans ImageMemin-Pngquant |
jpg | objet | indéfini | Options pour passer dans Imagemin-Jpegtran |
SVG | objet | indéfini | Options pour passer dans ImageMemin-Svgo |
gif | objet | indéfini | Options pour passer dans ImageMemin-Svgo |
Type: boolean
Par défaut: true
Définissez-le sur false
pour désactiver l'analyse de marque et recevez simplement JSON structuré contenant Markdown au lieu de HTML.
Type: boolean
Par défaut: false
Définissez ceci sur true
pour inclure les objets d'information de fichier dans la sortie JSON qui contiennent le chemin, le nom, le nom, créé à la date et modifié à la date.
L'exemple de répertoire de ce référentiel contient l'utilisation de Jdown, y compris l'analyse d'actifs et les options de rendu marquées personnalisées.
Toutes les demandes de traction sont les bienvenues et seront examinées.
Mit