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 相关文章推荐
在一个js文件里远程调用jquery.js会在ie8下的一个奇怪问题
Nov 28 Javascript
jquery动画1.加载指示器
Aug 24 Javascript
jQuery中实现动画效果的基本操作介绍
Apr 16 Javascript
Javascript自定义排序 node运行 实例
Jun 05 Javascript
jQuery源码分析之Callbacks详解
Mar 13 Javascript
原生JS和jQuery版实现文件上传功能
Apr 18 Javascript
Javascript实现图片不间断滚动的代码
Jun 22 Javascript
jQuery点击导航栏选中更换样式的实现代码
Jan 23 Javascript
iview同时验证多个表单问题总结
Sep 29 Javascript
React通过redux-persist持久化数据存储的方法示例
Feb 14 Javascript
JS插入排序简单理解与实现方法分析
Nov 25 Javascript
js实现抽奖的两种方法
Mar 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
Ping服务的php实现方法,让网站快速被收录
2012/02/04 PHP
让PHP更快的提供文件下载的代码
2012/06/13 PHP
关于尾递归的使用详解
2013/05/02 PHP
php日历制作代码分享
2014/01/20 PHP
PHP模板引擎smarty详细介绍
2015/05/26 PHP
yii2.0实现创建简单widgets示例
2016/07/18 PHP
PHP单例模式与工厂模式详解
2017/08/29 PHP
Laravel多用户认证系统示例详解
2018/03/13 PHP
jQuery 使用手册(六)
2009/09/23 Javascript
鼠标划过实现延迟加载并隐藏层的js代码
2013/10/11 Javascript
jquery实现checkbox全选全不选的简单实例
2013/12/31 Javascript
用js提交表单解决一个页面有多个提交按钮的问题
2014/09/01 Javascript
Javascript中实现trim()函数的两种方法
2015/02/04 Javascript
JavaScript正则表达式中的ignoreCase属性使用详解
2015/06/16 Javascript
从重置input file标签中看jQuery的 .val() 和 .attr(“value”) 区别
2016/06/12 Javascript
EasyUI 结合JS导出Excel文件的实现方法
2016/11/10 Javascript
原生js实现无缝轮播图效果
2017/01/11 Javascript
深入理解Node.js中的进程管理
2017/03/13 Javascript
js实现简单选项卡功能
2020/03/23 Javascript
JS将指定的某个字符全部转换为其他字符实例代码
2020/10/13 Javascript
原生js中运算符及流程控制示例详解
2021/01/05 Javascript
在scrapy中使用phantomJS实现异步爬取的方法
2018/12/17 Python
python读取.mat文件的数据及实例代码
2019/07/12 Python
python爬虫之爬取百度音乐的实现方法
2019/08/24 Python
基于zepto的插件之移动端无缝向上滚动并上下触摸滑动实例代码
2016/12/20 HTML / CSS
汇集了世界上最好的天然和有机美容产品:LoveLula
2018/02/05 全球购物
Spartoo瑞典:鞋子、包包和衣服
2018/09/15 全球购物
介绍java中初始化块的使用
2012/09/11 面试题
材料加工硕士生求职信
2013/10/10 职场文书
优秀大学生的自我评价
2014/01/16 职场文书
妇联领导班子剖析材料
2014/08/21 职场文书
2014年项目经理工作总结
2014/11/24 职场文书
500字小学生检讨书
2015/02/19 职场文书
如何做好工作总结!
2019/04/10 职场文书
PHP连接MSSQL数据库案例,PHPWAMP多个PHP版本连接SQL Server数据库
2021/04/16 PHP
Python - 10行代码集2000张美女图
2021/05/23 Python