Index.vue 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. <template>
  2. <Layout>
  3. <!-- Mise en page -->
  4. <!-- Sommaire -->
  5. <div class="column no-folio">
  6. <div class="section-title">
  7. Sommaire
  8. </div>
  9. <div class="column justify-end table-of-content">
  10. <span
  11. v-for="edge in $page.chapitres.edges.slice().reverse()"
  12. :key="`sommaire${edge.node.id}`"
  13. >
  14. <a :href="'#chapitres'+edge.node.id">{{ edge.node.titre }}</a>
  15. </span>
  16. </div>
  17. </div>
  18. <div v-for="edge in $page.chapitres.edges.slice().reverse()" :key="`chapitres${edge.node.id}`">
  19. <h2
  20. :id="`chapitres${edge.node.id}`"
  21. class="chapter-title canbreak"
  22. >{{edge.node.titre}}</h2>
  23. <VueMarkdown
  24. class="chapter-content justify"
  25. >{{edge.node.contenu}}
  26. </VueMarkdown>
  27. </div>
  28. </Layout>
  29. </template>
  30. <script>
  31. import { Previewer } from 'pagedjs'
  32. import VueMarkdown from 'vue-markdown'
  33. export default {
  34. components: {
  35. VueMarkdown
  36. },
  37. mounted(){
  38. this.$nextTick(()=>{
  39. let previewer = new Previewer();
  40. previewer.preview();
  41. })
  42. }
  43. }
  44. </script>
  45. <page-query>
  46. query {
  47. chapitres: allChapitres {
  48. edges {
  49. node {
  50. id
  51. titre
  52. contenu
  53. }
  54. }
  55. }
  56. }
  57. </page-query>