【Nuxt.js】 Nuxt/content를 사용해 보았습니다.
소개
최근 Nuxt/content 를 처음 사용해 보았으므로, 자신의 기억 정착과 비망록을 위해 기사로 남겨두고 싶습니다.
(참고 사이트)
nuxt/content 공식
Nuxt/content란 무엇입니까?
Nuxt.js 앱 내에서 마크다운 방식을 사용할 수 있습니다.
마크다운 방식을 사용하고자 하는 파일은 content 디렉토리 바로 아래에 생성하고 끝에 .md를 붙입니다.
파일 구성
특정 제품 또는 사이트에 대한 설명과 함께 페이지를 작성한다고 가정합니다.
├ content
│ └ manuals
│ ├ 001.md
│ └ 002.md
│
├ pages
│ └ manuals
│ ├ _slug.vue (詳細ページ)
│ └ index.vue (一覧ページ)
└ index.vue
사용방법
terminal.
$ npm install @nuxt/content
nuxt.config
{
modules: [
'@nuxt/content'
],
:
}
파일 구성에서도 간단하게 표기하고 있습니다만, pages/manuals/index.vue 는, pages/manuals/_slug.vue 에의 링크를 올린 일람 페이지가 됩니다.
pages/manuals/index.vue
<template>
<div>
<h1>一覧ページ</h1>
<ul>
<li v-for="manual in manuals" :key="manual.slug">
<!-- manual.slug はファイル名を表すので、リンクへ飛べる -->
<nuxt-link :to="'/manuals/' + manual.slug">
{{ manual.title }}
</nuxt-link>
</li>
</ul>
</div>
</template>
<script>
export default {
async asyncData ({ $content }) {
// content/manuals 直下のファイルを全て取得
const manuals = await $content('manuals').fetch()
return { manuals }
}
</script>
※ 마지막까지 실장을 하면 이와 같이 표시됩니다.
이 _slug.vue는 content/manuals/001.md 및 002.md를 읽습니다.
각 페이지가 표시됩니다.
pages/manuals/_slug.vue
<template>
<div>
<h1>{{ manuals.title }}</h1>
<!-- nuxt-content で作成した、content/manuals 直下のファイルを読み込む -->
<nuxt-content :document="manuals" />
</div>
</template>
<script>
export default {
async asyncData ({ $content, params }) {
const manuals = await $content('manuals', params.slug || 'index').fetch()
return { manuals }
}
}
</script>
content/manuals/manuals1.md 만들기
content/manuals/manuals1.md
---
title: マニュアル1
---
## サブタイトル
マニュアル1の説明文です。
content/manuals/manuals2.md 만들기
content/manuals/manuals2.md
---
title: マニュアル2
---
## サブタイトル
マニュアル2の説明文です。
요약
Nuxt/content 의 도입으로, 마크다운을 사용하는 것으로 글머리 기호가 사용하기 쉬운, 간단하게 Qiita의 투고 페이지와 같은 것을 작성할 수 있다는 점은 큰 이점이라고 느꼈습니다. 다만, 스타일을 맞추어 디자인을 조정하는 것을 생각하면, HTML 쪽이 융통이 효과가 있다고 하는 인상이었습니다.
어디까지나 개인적인 의견입니다만, 이하와 같이 정리합니다.
Nuxt/content
HTML
끝
이번에는 이상이 됩니다.
거친 기사가되어 버렸습니다만, 공식 페이지에는 다양한 옵션 등도 게재되고 있으므로, 용도에 맞추어 사용하면 좋다고 생각합니다.
나 자신 아직 아직 미숙하지만, 같은 입장에 조금이라도 도움이되면 다행입니다.
또, 만약 내용에 잘못 등이 있으면, 지적해 주시면 감사하겠습니다.
Reference
이 문제에 관하여(【Nuxt.js】 Nuxt/content를 사용해 보았습니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/__Wata16__/items/cbdeb310e6efd656dd77텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)