frontend: optimize login/logout ux logic

pull/275/head
Michael Li 1 year ago
parent 4506ecae90
commit 73da51d91e
No known key found for this signature in database

@ -226,6 +226,7 @@ const handleLogin = (e: Event) => {
store.commit('updateUserinfo', res);
store.commit('triggerAuth', false);
store.commit('refresh')
loginForm.username = '';
loginForm.password = '';
})

@ -2,7 +2,7 @@
<div class="reply-compose-wrap">
<div class="reply-switch">
<span class="time-item">
{{ formatPrettyTime(timestamp, store.state.collapsedLeft) }}
{{ formatPrettyTime(timestamp) }}
</span>
<div
v-if="!store.state.userLogined"

@ -147,14 +147,14 @@
<post-video :videos="post.videos" :full="true" />
<post-link :links="post.links" />
<div class="timestamp">
{{ formatPrettyTime(post.created_on, store.state.collapsedLeft) }}
{{ formatPrettyTime(post.created_on) }}
<span v-if="post.ip_loc">
<n-divider vertical />
{{ post.ip_loc }}
</span>
<span v-if="!store.state.collapsedLeft && post.created_on != post.latest_replied_on">
<n-divider vertical />
{{ formatPrettyTime(post.latest_replied_on, store.state.collapsedLeft) }}
{{ formatPrettyTime(post.latest_replied_on) }}
</span>
</div>
</template>

@ -55,7 +55,7 @@
<div class="content">{{ props.reply.content }}</div>
<div class="reply-switch">
<span class="time-item">
{{ formatPrettyTime(props.reply.created_on, store.state.collapsedLeft) }}
{{ formatPrettyTime(props.reply.created_on) }}
</span>
<div
v-if="!store.state.userLogined"

@ -145,9 +145,10 @@ const showFollowTopics = computed({
watch(
() => ({
refreshTopicFollow: store.state.refreshTopicFollow,
userLogined: store.state.userLogined
}),
(to, from) => {
if (to.refreshTopicFollow !== from.refreshTopicFollow) {
if (to.refreshTopicFollow !== from.refreshTopicFollow || to.userLogined) {
loadHotTags();
}
}

@ -247,6 +247,7 @@ const triggerAuth = (key: string) => {
};
const handleLogout = () => {
store.commit('userLogout');
store.commit('refresh')
goHome()
};
window.$store = store;

@ -14,10 +14,7 @@ export const formatRelativeTime = (time: number) => {
return moment.unix(time).fromNow();
};
export const formatPrettyTime = (time: number, noPretty: boolean) => {
if (noPretty) {
return moment.unix(time).fromNow();
}
export const formatPrettyTime = (time: number) => {
let mt = moment.unix(time);
let now = moment();
if (mt.year() != now.year()) {

Loading…
Cancel
Save