我正在尝试使用nuxt.js和mysql创建一个类似的系统,但它不起作用。
有我的组件描述一个类似的按钮后
<div class="post">
<div class="post-details">
{{ id }}
</div>
<div class="post-content">
{{ content }}
<form @submit.prevent="like">
<button type="submit" class="likes">
<i class='fas fa-heart'></i>
{{ likes_count }}
</button>
</form>
</div>
</div>
<script>
import axios from 'axios'
export default {
props: ['id', 'content', 'likes'],
data() {
return {
post_id: this.id,
likes_count: 0
}
},
methods: {
like() {
axios.post('http://localhost:4000/api/like', this.post_id)
.then(res => {
console.log(res)
this.likes_count++
}).catch(res => {
console.log(res)
})
}
}
}
</script>
和我的路线更新数据库和增加喜欢列
app.post('/api/like', (req, res) => {
const id = req.body.id
database.query("UPDATE posts SET likes = likes + 1 WHERE id = ?"), [id], (err, rows) => {
if(err) console.log(err)
if(rows.affectedRows != 0) console.log(rows.affectedRows)
res.json(rows)
})
})
有什么问题?谢谢你的帮助。
2条答案
按热度按时间x8goxv8g1#
乍一看:post-request参数应该是一个对象
是的,您应该显示错误日志(客户机和服务器)以获得任何帮助。
ifsvaxew2#
哦,我把动词换成了邮递的,它就行了!
我从nuxt开始,对api不太适应,谢谢你的帮助。