Markdown에서 컨텐츠를 작성하거나 Markdown 파일을 출력하는 NetLifyCMS와 같은 CMS를 사용하는 경우 JDown은 템플릿 내에서 소비 할 준비가 된 빌드 시간에 HTML이 포함 된 JSON으로 컨텐츠를 변환 할 수 있습니다.
$ npm install jdown --save-dev
const jdown = require ( 'jdown' ) ;
jdown ( 'path/to/content' ) . then ( content => console . log ( content ) ) ;
Markdown 컨텐츠 (프로젝트 루트와 관련하여)로 향하는 경로와 함께 Jdown을 호출하면 콘텐츠를 JSON으로 변환합니다.
Jdown 출력이라는 JSON의 구조는 컨텐츠 폴더 내의 파일이 구성되는 방식에 따라 다릅니다.
객체로 바뀌면 파일 객체는 항상 contents
과 fileInfo
속성을 포함합니다 ...
그런 다음 부모 폴더와 동일한 이름을 가진 상위 객체 내에서 그룹화 된 개별 객체로 전환됩니다 (한 수준 이상 깊은 곳으로 이동하지 마십시오).
파일 개체의 배열을 생성하려면 "컬렉션"이라는 폴더를 만들 수 있습니다. 컬렉션 폴더에는 하위 폴더 만 포함해야하며 각각의 각 파일은 하위 폴더의 각 파일이 다양한 객체에 추가됩니다.
Yaml FrontMatter는 전체 파일의 상단에 포함될 수 있으며 개별 속성으로 생성 된 JSON에 추가됩니다.
---
title : Example frontmatter
---
Example Markdown Content
유형 : string
필수의
위의 지침과 일치하는 폴더 구조가있는 Markdown 파일을 포함하는 폴더로가는 경로. 경로는 프로젝트 루트와 관련이 있어야하므로 컨텐츠가 /Users/username/project/src/content
에 있으면 jdown('src/content')
사용합니다.
유형 : object
유형 : object
표시 옵션으로 전달할 수있는 옵션 Jdown은 마크 다운의 구문 분석 방법을 제어하는 데 사용할 수있는 모든 마크 옵션을 지원합니다.
유형 : object
자산 구문 분석 옵션. 구문 분석 자산에 Jdown을 사용하는 것은 완전히 선택 사항이지만 다음과 같은 몇 가지 이점이 있습니다.
모든 정적 자산은 /assets
폴더 내에 배치해야합니다. 자산 폴더는 최상위 컨텐츠 디렉토리 및/또는 하위 디렉토리에 배치 할 수 있습니다. Markdown 컨텐츠 자산 내에서 my-asset.png
는 /assets
폴더 내에 위치한 자산 인 ![](./assets/my-asset.png)
사용하여 참조 할 수 있습니다.
자산 옵션 객체에는 다음 속성이 포함될 수 있습니다.
재산 | 유형 | 기본 | 설명 |
---|---|---|---|
산출 | 끈 | ./공공의 | 디렉토리 jdown은 처리 된 자산을 출력합니다 |
길 | 끈 | / | 공개적으로 액세스 가능한 PATH jdown은 파일 이름을 출력으로 선출합니다. |
PNG | 물체 | 한정되지 않은 | imagemin-pngquant로 전달하는 옵션 |
JPG | 물체 | 한정되지 않은 | imagemin-jpegtran으로 전달하는 옵션 |
SVG | 물체 | 한정되지 않은 | Imagemin-SVGO로 전달하는 옵션 |
gif | 물체 | 한정되지 않은 | Imagemin-SVGO로 전달하는 옵션 |
유형 : boolean
기본값 : true
Markdown 구문 분석을 비활성화하려면 이것을 false
로 설정하고 HTML 대신 마크 다운을 포함하는 구조화 된 JSON을받습니다.
유형 : boolean
기본값 : false
파일 경로, 이름, 날짜에 생성되고 날짜에 수정 된 출력 JSON에 파일 정보 객체를 포함하도록 이것을 true
로 설정하십시오.
이 저장소의 예제 디렉토리에는 자산 구문 분석 및 사용자 정의 표시 렌더링 옵션을 포함한 Jdown 사용이 포함되어 있습니다.
모든 풀 요청을 환영하며 검토됩니다.
MIT