blog-client/components/LeftContent.vue
2019-02-07 16:26:17 +08:00

114 lines
3.9 KiB
Vue
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<template lang="pug">
#leftcontent
#wrap
#leftMain
h1.title
nuxt-link(to='/') 轶哥博客
.widget.avatar
.widgetTitle
label 关于作者
img(src='https://cdn.wyr.me/avatar.png')
p.aboutMe
| 妄图改变世界的全栈程序员
.social
ul
li
a(href='https://github.com/yi-ge', target='_blank')
Icon(:icon="['fab', 'github']")
li
Icon(:icon="['fab', 'qq']" @click="info('qq')")
li
Icon(:icon="['fab', 'weixin']" @click="info('weixin')")
li
a(href='http://weibo.com/syxj', target='_blank')
Icon(:icon="['fab', 'weibo']")
li
a(href='https://twitter.com/FYTencel', target='_blank')
Icon(:icon="['fab', 'twitter']")
li
a(href='https://www.facebook.com/cnyige', target='_blank')
Icon(:icon="['fab', 'facebook']")
li
a(href='https://plus.google.com/u/0/101716298673782941484', target='_blank')
Icon(:icon="['fab', 'google-plus']")
li
a(href='https://t.me/cnyige', target='_blank')
Icon(:icon="['fab', 'telegram']")
li
Icon(:icon="['fas', 'envelope']" @click="info('email')")
.social-info-box(v-if='socialInfo')
| {{ socialInfo }}
#navication.widget.navication
.widgetTitle
label 导航
ul
li
nuxt-link(to='/') 主页
li(v-for='(categorys, index) in $store.state.categorys', :key='index', v-show="categorys.name !== '未分类'")
nuxt-link(:to="'/' + categorys.slug") {{ categorys.name }}
.search-box
input.search(type='text', placeholder='搜索', v-model='searchVal', @keyup.enter='search')
Icon(:icon="['fas', 'search']" @click="search")
.widget.comment
.widgetTitle
label 最新评论
ul
li(v-for='(newComment, index) in $store.state.newComments', :key='index')
strong {{ newComment.comment_author }}
span
nuxt-link(:to="'/post/' + newComment.post.ID + '#comments'") {{ newComment.comment_content }}
.meta
span
Icon(:icon="['far', 'clock']")
| &nbsp; {{ newComment.comment_date }}
span
|
nuxt-link(:to="'/post/' + newComment.post.ID") {{ newComment.post.post_title }}
.widget.posts
.widgetTitle
label 热门文章
ul
li(v-for='(hotArticle, index) in $store.state.hotArticle', :key='index')
.thumbnail
img(width='150', :src="hotArticle.postimages[0].guid + '?x-oss-process=image/resize,m_lfit,h_150,w_150'")
.detail
nuxt-link(:to="'/post/' + hotArticle.ID", :title='hotArticle.post_title') {{ hotArticle.post_title }}
.meta {{ hotArticle.post_modified }}
#tags.widget.tags
.widgetTitle
label 标签
.tagcloud
nuxt-link(:to="'/tag/' + tag.slug", :title='tag.name', v-for='tag in $store.state.tags', :key='tag.term_id') {{ tag.name }}
</template>
<script>
export default {
data() {
return {
socialInfo: false,
searchVal: ''
}
},
methods: {
info(type) {
if (type === 'qq') {
this.socialInfo = 'QQ: 373226722'
} else if (type === 'weixin') {
this.socialInfo = '微信: wy373226722'
} else if (type === 'email') {
this.socialInfo = 'Email: a@wyr.me'
}
setTimeout(() => {
this.socialInfo = false
}, 3000)
},
search() {
console.log(this.searchVal)
if (this.searchVal !== '') this.$router.push({ path: 'search?q=' + this.searchVal })
}
}
}
</script>