vue实现点击关注后及时更新列表功能


Posted in Javascript onJune 26, 2018

vue实现点击关注后及时更新列表功能

如图,我要实现点击关注之后列表及时更新成最新的列表。

思路很简单,主要是两点:

1、在点击关注之后去执行一个请求新的关注列表的action;

2、在vue组件中watch监听已关注列表和推荐关注列表

主要代码如下:

组件:

关注的methods:

followMethod(item){
     if(this.token){
      this.$store.dispatch('follow',{followUserId:item.pubId,page:this.page,size:this.size});
      this.$set(item,"followStatus",true);
//      this.$store.dispatch('refreshFollowList',{page:0,size:this.size});
     }else{
      Toast({
       message: "请先登录",
       duration: 800
      });
      setTimeout(function () {
       this.$router.push('/login');
      },800)
     }
   },

watch:

followList(curVal, oldVal){
    console.log(curVal)
   },
   userFollowList(curVal, oldVal){
    console.log(curVal)
   },

followList.js vuex的列表module文件:

action:

follow({dispatch,commit},payload){
  axios({
   method:"post",
   url:"web/follow/add",
   headers: {'w-auth-token': Cookies.get('token')},
   params:{
    page:payload.page,
    size:payload.size
   },
   data:{
    followUserId:payload.followUserId
   }
  }).then((res) => {
   Toast("关注成功");
   return dispatch('refreshFollowList')
  }).catch((error) => {
   Toast("关注出错,请重试!");
  });
 }

refreshFollowList({state,commit}){
  if(token){
   axios.all([
    axios({
     method:"get",
     url:"web/pub/recommend",
     headers: {'w-auth-token': token},
    }),
    axios({
     method:"get",
     url:"web/pub/list_pub_and_top_news",
     headers: {'w-auth-token': Cookies.get('token')},
    })
   ]).then(axios.spread(function(res1,res2){
    commit("REFRESHFOLLOWLIST",res1);
    commit("REFRESHUSERFOLLOWLIST",res2);
   }));
  }else{
   axios({
    method:"get",
    url:"web/pub/recommend",
   }).then(function(res){
    commit("REFRESHFOLLOWLIST",res);
   });
  }
 },

mutation:

const mutations = {
 REFRESHFOLLOWLIST(state,res){
   state.followList=res.data.content;
   state.totalPages=res.data.totalPages;
 },
 REFRESHUSERFOLLOWLIST(state,res){
  state.userFollowList=res.data.content;
  state.userTotalPages=res.data.userTotalPages;
 },
};

总结

以上所述是小编给大家介绍的vue实现点击关注后及时更新列表功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
Javascript 布尔型分析
Dec 22 Javascript
Javascript 遍历对象中的子对象
Jul 03 Javascript
几个javascript操作word的参考代码
Oct 26 Javascript
JavaScript 常用函数
Dec 30 Javascript
jQuery 学习6 操纵元素显示效果的函数
Feb 07 Javascript
使用Mootools动态添加Css样式表代码,兼容各浏览器
Dec 12 Javascript
js 中将多个逗号替换为一个逗号的代码
Jun 07 Javascript
javascript常用功能汇总
Jul 05 Javascript
js实现textarea限制输入字数
Feb 13 Javascript
vue 虚拟dom的patch源码分析
Mar 01 Javascript
微信小程序实现上拉加载功能
Nov 20 Javascript
在Vue项目中使用Typescript的实现
Dec 19 Javascript
微信小程序项目总结之点赞 删除列表 分享功能
Jun 25 #Javascript
nuxt.js 缓存实践
Jun 25 #Javascript
vue2.0使用v-for循环制作多级嵌套菜单栏
Jun 25 #Javascript
浅谈super-vuex使用体验
Jun 25 #Javascript
使用vue-router beforEach实现判断用户登录跳转路由筛选功能
Jun 25 #Javascript
使用vue的transition完成滑动过渡的示例代码
Jun 25 #Javascript
JS实现仿微信支付弹窗功能
Jun 25 #Javascript
You might like
15个小时----从修改程序到自己些程序
2006/10/09 PHP
Laravel中基于Artisan View扩展包创建及删除应用视图文件的方法
2016/10/08 PHP
用js实现的页面关键字密度查询代码
2007/12/27 Javascript
javascript call方法使用说明
2010/01/11 Javascript
有关JavaScript的10个怪癖和秘密分享
2011/08/28 Javascript
当前页禁止复制粘贴截屏代码小集
2013/07/24 Javascript
js window.onload 加载多个函数和追加函数详解
2014/01/08 Javascript
javascript常用方法汇总
2014/12/02 Javascript
js表头排序实现方法
2015/01/16 Javascript
关于AngularJs数据的本地存储详解
2017/01/20 Javascript
vue内置指令详解
2018/04/03 Javascript
Angular6 发送手机验证码按钮倒计时效果实现方法
2019/01/08 Javascript
jquery弹窗时禁止body滚动条滚动的例子
2019/09/21 jQuery
纯Python开发的nosql数据库CodernityDB介绍和使用实例
2014/10/23 Python
Python中AND、OR的一个使用小技巧
2015/02/18 Python
python获取当前时间对应unix时间戳的方法
2015/05/15 Python
Python实现的字典值比较功能示例
2018/01/08 Python
python写入已存在的excel数据实例
2018/05/03 Python
python学习之hook钩子的原理和使用
2018/10/25 Python
详解Python3 pandas.merge用法
2019/09/05 Python
基于python解线性矩阵方程(numpy中的matrix类)
2019/10/21 Python
Django自定义用户表+自定义admin后台中的字段实例
2019/11/18 Python
Django跨域请求原理及实现代码
2020/11/14 Python
使用CSS实现阅读进度条
2017/02/27 HTML / CSS
巴黎欧莱雅法国官网:L’Oreal Paris
2019/04/30 全球购物
智乐游戏测试笔试题
2014/05/21 面试题
医学毕业生自荐信
2013/10/11 职场文书
正规的求职信范文分享
2013/12/11 职场文书
运动会方阵解说词
2014/02/12 职场文书
实习生评语
2014/04/26 职场文书
安全宣传标语口号
2014/06/06 职场文书
毕业生求职信
2014/06/10 职场文书
助学感谢信范文
2015/01/21 职场文书
退休职工欢送会致辞
2015/08/01 职场文书
MyBatis-Plus 批量插入数据的操作方法
2021/09/25 Java/Android
如何在python中实现ECDSA你知道吗
2021/11/23 Python