添加评论功能
This commit is contained in:
parent
280e58e058
commit
4d05c1a1a5
@ -15,7 +15,7 @@ export default {
|
||||
|
||||
if (!code) { this.notice = '<p style="color: #999">非法访问,缺少授权参数"code"。<p><br><br> <a href="https://www.wyr.me" target="_blank">返回首页<a>'; this.$finishLoad(); return }
|
||||
|
||||
const { data } = await this.$axios.post('http://127.0.0.1:65534/visitor/user/auth', {
|
||||
const { data } = await this.$axios.post('/visitor/user/auth', {
|
||||
type: 'github',
|
||||
code
|
||||
})
|
||||
|
@ -55,7 +55,7 @@
|
||||
img(:src="visitorInfo.avatarURL")
|
||||
.comment-nickname {{ visitorInfo.nickname }}
|
||||
.comment-logout(@click="commentLogout") 退出
|
||||
.comment-btn(@click="commentCommit") 发布
|
||||
.comment-btn(@click="commentCommit('editor')") 发布
|
||||
.comment-reply-commit(id="comment-reply-commit", v-show="replyID")
|
||||
.login(v-show="!visitorToken", @click="login")
|
||||
img(src="https://cdn.wyr.me/imgs/GitHub-Login.png")
|
||||
@ -67,7 +67,7 @@
|
||||
img(:src="visitorInfo.avatarURL")
|
||||
.comment-nickname {{ visitorInfo.nickname }}
|
||||
.comment-logout(@click="commentLogout") 退出
|
||||
.comment-btn(@click="commentCommit") 发布
|
||||
.comment-btn(@click="commentCommit('editor-reply')") 发布
|
||||
ins.adsbygoogle(style="display:block; text-align:center; margin-top:20px;", data-ad-layout="in-article", data-ad-format="fluid", data-ad-client="ca-pub-2143583075951360", data-ad-slot="4741804954")
|
||||
.articelRightToc(v-show="articels.post_toc_show && showRightToc", @click="articelRightTocClick")
|
||||
.articelTitle 目录
|
||||
@ -103,6 +103,7 @@ export default {
|
||||
const commentAmount = tmp.result.amount || 0
|
||||
|
||||
return {
|
||||
postID: route.params.id,
|
||||
articels: result,
|
||||
comments,
|
||||
commentsMap: new Map(),
|
||||
@ -256,15 +257,7 @@ export default {
|
||||
})
|
||||
}
|
||||
|
||||
const comments = this.comments
|
||||
for (let i = 0; i < comments.length; i++) {
|
||||
this.commentsMap.set(comments[i].comment_ID, comments[i])
|
||||
if (comments[i].children) {
|
||||
for (let j = 0; j < comments[i].children.length; j++) {
|
||||
this.commentsMap.set(comments[i].children[j].comment_ID, comments[i].children[j])
|
||||
}
|
||||
}
|
||||
}
|
||||
this.setCommentMap()
|
||||
}
|
||||
|
||||
this.$finishLoad()
|
||||
@ -465,8 +458,31 @@ export default {
|
||||
})
|
||||
}
|
||||
},
|
||||
commentCommit () {
|
||||
async commentCommit (type) {
|
||||
const parentID = this.replyID || 0
|
||||
const lastID = this.replyLastID || 0
|
||||
const postID = this.postID
|
||||
if (!postID) {
|
||||
alert('致命错误')
|
||||
return
|
||||
}
|
||||
|
||||
const { data } = await this.$axios.post('/comments/commit', {
|
||||
postID,
|
||||
lastID,
|
||||
parentID,
|
||||
content: type === 'editor-reply' ? window.editorReplyObj.getValue() : window.editorObj.getValue()
|
||||
})
|
||||
|
||||
if (data.status === 1) {
|
||||
// 获取评论
|
||||
const tmp = await this.$axios.get(`/public/comments/post?ID=${postID}`)
|
||||
const comments = tmp.result.list || []
|
||||
const commentAmount = tmp.result.amount || 0
|
||||
this.comments = comments
|
||||
this.commentAmount = commentAmount
|
||||
this.setCommentMap()
|
||||
}
|
||||
},
|
||||
commentLogout () {
|
||||
window.localStorage.removeItem('visitorToken')
|
||||
@ -474,6 +490,17 @@ export default {
|
||||
},
|
||||
login () {
|
||||
window.open('https://github.com/login/oauth/authorize?client_id=ce1673a37333e47e482d&redirect_uri=https://www.wyr.me/auth', 'Github授权', 'scrollbars=yes,resizable=yes,status=no,location=yes,toolbar=no,menubar=no,width=800,height=600,left=0,top=0')
|
||||
},
|
||||
setCommentMap () {
|
||||
const comments = this.comments
|
||||
for (let i = 0; i < comments.length; i++) {
|
||||
this.commentsMap.set(comments[i].comment_ID, comments[i])
|
||||
if (comments[i].children) {
|
||||
for (let j = 0; j < comments[i].children.length; j++) {
|
||||
this.commentsMap.set(comments[i].children[j].comment_ID, comments[i].children[j])
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
head () {
|
||||
|
Loading…
Reference in New Issue
Block a user