rudeshark.net/src/client/app/desktop/views/pages/post.vue

68 lines
1.1 KiB
Vue
Raw Normal View History

2018-02-15 21:32:21 +01:00
<template>
<mk-ui>
<main v-if="!fetching">
<a v-if="post.next" :href="post.next">%fa:angle-up%%i18n:desktop.tags.mk-post-page.next%</a>
<mk-post-detail :post="post"/>
<a v-if="post.prev" :href="post.prev">%fa:angle-down%%i18n:desktop.tags.mk-post-page.prev%</a>
</main>
</mk-ui>
</template>
<script lang="ts">
import Vue from 'vue';
import Progress from '../../../common/scripts/loading';
export default Vue.extend({
data() {
return {
fetching: true,
post: null
};
},
2018-02-22 13:23:10 +01:00
watch: {
$route: 'fetch'
},
created() {
this.fetch();
},
methods: {
fetch() {
Progress.start();
this.fetching = true;
2018-02-21 18:41:29 +01:00
2018-02-22 13:23:10 +01:00
(this as any).api('posts/show', {
2018-03-29 07:48:47 +02:00
postId: this.$route.params.post
2018-02-22 13:23:10 +01:00
}).then(post => {
this.post = post;
this.fetching = false;
2018-02-15 21:32:21 +01:00
2018-02-22 13:23:10 +01:00
Progress.done();
});
}
2018-02-15 21:32:21 +01:00
}
});
</script>
<style lang="stylus" scoped>
main
padding 16px
text-align center
> a
display inline-block
&:first-child
margin-bottom 4px
&:last-child
margin-top 4px
> [data-fa]
margin-right 4px
> .mk-post-detail
margin 0 auto
width 640px
</style>