Skip to content
Snippets Groups Projects
Commit 1025077d authored by syuilo's avatar syuilo
Browse files

wip

parent 4fd31927
No related branches found
No related tags found
No related merge requests found
......@@ -25,6 +25,7 @@ import MkSelectDrive from './views/pages/selectdrive.vue';
import MkDrive from './views/pages/drive.vue';
import MkHomeCustomize from './views/pages/home-customize.vue';
import MkMessagingRoom from './views/pages/messaging-room.vue';
import MkPost from './views/pages/post.vue';
/**
* init
......@@ -75,7 +76,8 @@ init(async (launch) => {
{ path: '/i/drive', component: MkDrive },
{ path: '/i/drive/folder/:folder', component: MkDrive },
{ path: '/selectdrive', component: MkSelectDrive },
{ path: '/:user', component: MkUser }
{ path: '/:user', component: MkUser },
{ path: '/:user/:post', component: MkPost }
]);
}, true);
......
......@@ -38,7 +38,7 @@
</router-link>
</header>
<div class="body">
<mk-post-html v-if="p.ast" :ast="p.ast" :i="os.i"/>
<mk-post-html :class="$style.text" v-if="p.ast" :ast="p.ast" :i="os.i"/>
<mk-url-preview v-for="url in urls" :url="url" :key="url"/>
<div class="media" v-if="p.media">
<mk-images :images="p.media"/>
......@@ -311,17 +311,8 @@ export default Vue.extend({
> .body
padding 8px 0
> .text
cursor default
display block
margin 0
padding 0
overflow-wrap break-word
font-size 1.5em
color #717171
> .mk-url-preview
margin-top 8px
> .mk-url-preview
margin-top 8px
> footer
font-size 1.2em
......@@ -351,3 +342,14 @@ export default Vue.extend({
border-top 1px solid #eef0f2
</style>
<style lang="stylus" module>
.text
cursor default
display block
margin 0
padding 0
overflow-wrap break-word
font-size 1.5em
color #717171
</style>
......@@ -13,26 +13,32 @@ import Vue from 'vue';
import Progress from '../../../common/scripts/loading';
export default Vue.extend({
props: ['postId'],
data() {
return {
fetching: true,
post: null
};
},
mounted() {
Progress.start();
// TODO: extract the fetch step for vue-router's caching
watch: {
$route: 'fetch'
},
created() {
this.fetch();
},
methods: {
fetch() {
Progress.start();
this.fetching = true;
(this as any).api('posts/show', {
post_id: this.postId
}).then(post => {
this.post = post;
this.fetching = false;
(this as any).api('posts/show', {
post_id: this.$route.params.post
}).then(post => {
this.post = post;
this.fetching = false;
Progress.done();
});
Progress.done();
});
}
}
});
</script>
......
......@@ -22,6 +22,7 @@ import MkDrive from './views/pages/drive.vue';
import MkNotifications from './views/pages/notifications.vue';
import MkMessaging from './views/pages/messaging.vue';
import MkMessagingRoom from './views/pages/messaging-room.vue';
import MkPost from './views/pages/post.vue';
/**
* init
......@@ -57,6 +58,7 @@ init((launch) => {
{ path: '/i/drive/folder/:folder', component: MkDrive },
{ path: '/i/drive/file/:file', component: MkDrive },
{ path: '/selectdrive', component: MkSelectDrive },
{ path: '/:user', component: MkUser }
{ path: '/:user', component: MkUser },
{ path: '/:user/:post', component: MkPost }
]);
}, true);
......@@ -16,27 +16,36 @@ import Vue from 'vue';
import Progress from '../../../common/scripts/loading';
export default Vue.extend({
props: ['postId'],
data() {
return {
fetching: true,
post: null
};
},
watch: {
$route: 'fetch'
},
created() {
this.fetch();
},
mounted() {
document.title = 'Misskey';
document.documentElement.style.background = '#313a42';
},
methods: {
fetch() {
Progress.start();
this.fetching = true;
Progress.start();
(this as any).api('posts/show', {
post_id: this.postId
}).then(post => {
this.post = post;
this.fetching = false;
(this as any).api('posts/show', {
post_id: this.$route.params.post
}).then(post => {
this.post = post;
this.fetching = false;
Progress.done();
});
Progress.done();
});
}
}
});
</script>
......
......@@ -82,12 +82,12 @@ export default Vue.extend({
return age(this.user.profile.birthday);
}
},
created() {
this.fetch();
},
watch: {
$route: 'fetch'
},
created() {
this.fetch();
},
mounted() {
document.documentElement.style.background = '#313a42';
},
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment