IndexOperum.vue 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. <template>
  2. <MainContentLayout id="index-operum" class="index">
  3. <template v-slot:header>
  4. <h1>Œuvres</h1>
  5. <span v-if="!items.length">Loading ...</span>
  6. </template>
  7. <ul v-if="items.length" class="item-list">
  8. <li v-for="item in items" :key="item.uuid">
  9. <OperumItem :item="item" />
  10. </li>
  11. </ul>
  12. <template v-slot:nav />
  13. </MainContentLayout>
  14. </template>
  15. <script>
  16. import { REST } from 'api/rest-axios'
  17. import MainContentLayout from '../components/Layouts/MainContentLayout'
  18. import OperumItem from '../components/Content/OperumItem'
  19. export default {
  20. name: 'IndexOperum',
  21. components: {
  22. OperumItem,
  23. MainContentLayout
  24. },
  25. data: () => ({
  26. items: []
  27. }),
  28. beforeCreate () {
  29. REST.get(`/indexOperum`, {})
  30. .then(({ data }) => {
  31. console.log('index operum REST: data', data)
  32. if (data.content.length) {
  33. this.items = data.content
  34. }
  35. })
  36. .catch((error) => {
  37. console.warn('Issue with index operum', error)
  38. Promise.reject(error)
  39. })
  40. }
  41. }
  42. </script>
  43. <style lang="scss" scoped>
  44. </style>