PageView.vue 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. <template>
  2. <page-layout :desc="desc" :linkList="linkList">
  3. <div v-if="this.extraImage && !isMobile" slot="extra" class="extraImg">
  4. <img :src="extraImage"/>
  5. </div>
  6. <page-toggle-transition :disabled="animate.disabled" :animate="animate.name" :direction="animate.direction">
  7. <router-view ref="page" />
  8. </page-toggle-transition>
  9. </page-layout>
  10. </template>
  11. <script>
  12. import PageLayout from './PageLayout'
  13. import PageToggleTransition from '../components/transition/PageToggleTransition';
  14. import {mapState} from 'vuex'
  15. export default {
  16. name: 'PageView',
  17. components: {PageToggleTransition, PageLayout},
  18. data () {
  19. return {
  20. page: {}
  21. }
  22. },
  23. computed: {
  24. ...mapState('setting', ['isMobile', 'multiPage', 'animate']),
  25. desc() {
  26. return this.page.desc
  27. },
  28. linkList() {
  29. return this.page.linkList
  30. },
  31. extraImage() {
  32. return this.page.extraImage
  33. }
  34. },
  35. mounted () {
  36. this.page = this.$refs.page
  37. },
  38. updated () {
  39. this.page = this.$refs.page
  40. }
  41. }
  42. </script>
  43. <style lang="less" scoped>
  44. .extraImg{
  45. margin-top: -60px;
  46. text-align: center;
  47. width: 195px;
  48. img{
  49. width: 100%;
  50. }
  51. }
  52. </style>