添加评论功能
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 }
|
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',
|
type: 'github',
|
||||||
code
|
code
|
||||||
})
|
})
|
||||||
|
@ -55,7 +55,7 @@
|
|||||||
img(:src="visitorInfo.avatarURL")
|
img(:src="visitorInfo.avatarURL")
|
||||||
.comment-nickname {{ visitorInfo.nickname }}
|
.comment-nickname {{ visitorInfo.nickname }}
|
||||||
.comment-logout(@click="commentLogout") 退出
|
.comment-logout(@click="commentLogout") 退出
|
||||||
.comment-btn(@click="commentCommit") 发布
|
.comment-btn(@click="commentCommit('editor')") 发布
|
||||||
.comment-reply-commit(id="comment-reply-commit", v-show="replyID")
|
.comment-reply-commit(id="comment-reply-commit", v-show="replyID")
|
||||||
.login(v-show="!visitorToken", @click="login")
|
.login(v-show="!visitorToken", @click="login")
|
||||||
img(src="https://cdn.wyr.me/imgs/GitHub-Login.png")
|
img(src="https://cdn.wyr.me/imgs/GitHub-Login.png")
|
||||||
@ -67,7 +67,7 @@
|
|||||||
img(:src="visitorInfo.avatarURL")
|
img(:src="visitorInfo.avatarURL")
|
||||||
.comment-nickname {{ visitorInfo.nickname }}
|
.comment-nickname {{ visitorInfo.nickname }}
|
||||||
.comment-logout(@click="commentLogout") 退出
|
.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")
|
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")
|
.articelRightToc(v-show="articels.post_toc_show && showRightToc", @click="articelRightTocClick")
|
||||||
.articelTitle 目录
|
.articelTitle 目录
|
||||||
@ -103,6 +103,7 @@ export default {
|
|||||||
const commentAmount = tmp.result.amount || 0
|
const commentAmount = tmp.result.amount || 0
|
||||||
|
|
||||||
return {
|
return {
|
||||||
|
postID: route.params.id,
|
||||||
articels: result,
|
articels: result,
|
||||||
comments,
|
comments,
|
||||||
commentsMap: new Map(),
|
commentsMap: new Map(),
|
||||||
@ -256,15 +257,7 @@ export default {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
const comments = this.comments
|
this.setCommentMap()
|
||||||
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.$finishLoad()
|
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 () {
|
commentLogout () {
|
||||||
window.localStorage.removeItem('visitorToken')
|
window.localStorage.removeItem('visitorToken')
|
||||||
@ -474,6 +490,17 @@ export default {
|
|||||||
},
|
},
|
||||||
login () {
|
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')
|
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 () {
|
head () {
|
||||||
|
Loading…
Reference in New Issue
Block a user