Nuxt Notion Integration
Reference
Issues & Limitations
- Tidak mendukung Database, Checkbox, dan Table of Content (tidak akan pernah diimplementasikan) Jenis-jenis database:

- Belum mendukung Equation block
- Tidak menggunakan API Official Notion. Sekarang masih menggunakan API Private Notion wrapper sehingga bisa jadi tidak stabil kedepannya. Sayangnya, API Official Notion juga masih baru dan dalam tahap beta.
- Kalau notionnya private, tidak bisa ngefetch gambar (butuh cookie login session dari client side). Solusi alternatifnya simpan gambarnya di tempat lain (embed) bukan langsung ditaruh di Notion.
- Belum support typescript (gaada @typesnya)
- Belum support synced blocks/page
Steps (menggunakan public worker)
- Install
vue-notiondanprismjs
npm i -D vue-notion @types/prismjs npm i prismjs prism-themes
- Masukkan
vue-notionke dalambuildModules
// nuxt.config.js export default { // ... buildModules: ["vue-notion/nuxt"], };
- Masukkan
@types/prismjske dalamtsconfig.json
// tsconfig.json { "compilerOptions": { ... "types": [ ... "@types/prismjs" ] }, ... }
- Gunakan
vue-notionsebagai$notionpadaasyncDatatiap page. Selebihnya dapat melihat dokumentasi vue-notion dan contoh-contohnya.
async asyncData({ $notion }) { ... }
- Secara default, prismjs hanya dapat melakukan syntax highlighting pada
markup,css,c-like, danjavascript. Agar dapat support lebih banyak bahasa pemrograman dapat meng-import komponen bahasa yang dibutuhkan (contoh di bawah) atau menggunakan babel plugin.
import 'prismjs/components/prism-bash' import 'prismjs/components/prism-json' import 'prismjs/components/prism-dart' import 'prismjs/components/prism-typescript' import 'prismjs/components/prism-yaml'
