crazilynumClick() { var _this=this; layui.http.request('storeup/list', 'get', { page: 1, limit: 1, type:'%2%', refid : this.detail.id, tablename : this.detailTable, userid: localStorage.getItem('userid'), }, (res) => { vue.dataList = res.data.list if(res.data.list.length==1) { layui.http.requestJson(`storeup/delete`, 'post', [res.data.list[0].id], function(res) { _this.detail.crazilynum = parseInt(_this.detail.crazilynum==null?0:_this.detail.crazilynum) - 1 layui.http.requestJson(`${_this.detailTable}/update`, 'post', _this.detail, function(res2) { console.log(res2); }) layer.msg('取消成功', { time: 1000, icon: 5 }, function() { window.location.reload(); }); }); return; }
时间: 2024-02-09 16:07:34 浏览: 83
这是一个Vue组件中的一个方法`crazilynumClick()`,当用户点击“踩一下”或“取消踩”按钮时会触发该方法。该方法会执行一个异步请求,向服务器端发送一个GET请求,请求的地址是`storeup/list`,参数包括了页码、每页数量、踩类型、关联ID、表名以及用户ID等信息。请求成功后,将服务器端返回的数据赋值给`vue.dataList`。如果返回的数据列表中有元素,说明该用户已经踩过了,此时会执行一个异步POST请求,请求地址是`storeup/delete`,参数为一个由该用户踩的记录的id组成的数组。请求成功后,会更新`this.detail.crazilynum`属性的值,并将更新后的数据再次发送给服务器端进行保存。最后,会弹出一个提示框提示用户“取消成功”,并在1秒后重新加载页面。
相关问题
if (type == -1 && this.isStoreup) {//取消收藏 this.$http.get('storeup/list', { params: { page: 1, limit: 1, type: 1, refid: this.detail.id, tablename: 'lvyoujingdian', userid: localStorage.getItem('userid') } }).then(res => { if (res.data.code == 0 && res.data.data.list.length > 0) { this.isStoreup = true; this.storeupInfo = res.data.data.list[0]; let delIds = new Array(); delIds.push(this.storeupInfo.id); this.$http.post('storeup/delete', delIds).then(res => { if (res.data.code == 0) { this.isStoreup = false; this.$message({ type: 'success', message: '取消成功!', duration: 1500, }); } }); } });
这是一段 Vue.js 的代码,用于取消收藏操作。首先判断 `type` 是否为 -1 并且 `isStoreup` 为 `true`,如果是,则向服务器发送 GET 请求,获取收藏列表中与当前详情页关联的收藏记录。如果获取到了数据,将 `isStoreup` 设为 `true`,并将收藏信息存储到 `storeupInfo` 中。接着构造一个数组 `delIds`,将当前收藏记录的 ID 添加到其中,并向服务器发送 POST 请求执行删除操作。如果删除成功,则将 `isStoreup` 设为 `false`,并显示一个成功的提示消息。
getStoreupStatus() {//获取用户对景点的收藏状态 if (localStorage.getItem("Token")) { this.$http.get('storeup/list', { params: { page: 1, limit: 1, type: 1, refid: this.detail.id, tablename: 'lvyoujingdian', userid: localStorage.getItem('userid') } }).then(res => { if (res.data.code == 0 && res.data.data.list.length > 0) { this.isStoreup = true; this.storeupInfo = res.data.data.list[0]; } }); }
这是一个Vue.js组件中的方法,它用于获取用户对景点的收藏状态。该方法通过检查本地存储中是否存在Token来确定用户是否已登录。如果用户已登录,它将使用Vue.js的$http服务向服务器发送一个GET请求,以获取用户对该景点的收藏状态。请求中包含了一些参数,如页码、每页显示的条目数、景点的ID以及用户ID等等。如果请求成功,并且返回的数据中包含了用户对该景点的收藏信息,那么将会设置组件的isStoreup属性为true,并将收藏信息存储到storeupInfo属性中。
阅读全文