【发布时间】:2022-01-12 22:17:43
【问题描述】:
我正在使用 API,我需要显示电影并喜欢它们,但我需要喜欢它们一次。我试图添加一个布尔值,我有这样的东西:
let beenLiked = false;
const movieLike = document.getElementById("likeButton")
movieLike.addEventListener('click', () => {
console.log("ok like")
axios.patch(`myUrl`)
beenLiked = true
}, true)
问题是当我喜欢一部电影时,由于我的布尔值,我不能喜欢另一部电影,我该如何修改它来解决我的问题?
【问题讨论】:
-
这取决于您希望如何跟踪喜欢。你有用户系统吗?如果没有,您是否跟踪 IP?喜欢不喜欢不止一次的限制是什么。你有多人吗?然后,您应该明确地在您的数据库或保存喜欢的任何地方跟踪它,并将那里的人保存在一个数组中。调用 api 后,通过在数组中查找匹配项来检查请求者是否已经喜欢这部电影。然后拒绝该动作,如果它已经被喜欢。或者您可以禁用 eventListener (虽然将在页面重新加载时重新激活:/)
-
@MaximilianDolbaum 问题是我们没有任何数据库,我们只是有能够喜欢电影的指令,以任何方式存储它以使电影不受欢迎。
标签: javascript local-storage addeventlistener