>웹 프론트엔드 >JS 튜토리얼 >vue는 팔로우 버튼을 클릭한 후 적시에 목록 업데이트를 구현합니다.

vue는 팔로우 버튼을 클릭한 후 적시에 목록 업데이트를 구현합니다.

不言
不言원래의
2018-07-05 17:42:212127검색

이 기사에서는 팔로우를 클릭한 후 시간에 맞춰 목록을 업데이트하는 vue 구현을 주로 소개합니다. 이제 모든 사람과 공유할 수 있습니다. 그림, 팔로우를 클릭한 후 목록을 구현하고 싶습니다. 적시에 최신 목록으로 업데이트되었습니다.

아이디어는 매우 간단합니다. 주로 두 가지 사항이 있습니다.

1. 팔로우를 클릭한 후 새 시청 목록을 요청하는 작업을 실행합니다.

2 vue 구성 요소에서 watch는 팔로우 목록과 추천 시청 목록을 모니터링합니다. 주로 코드는 다음과 같습니다.

Component:

다음 메소드:

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의 목록 모듈 파일:

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;
  },
};

위는 전체 내용입니다. 이 글이 모든 분들의 학습에 도움이 되기를 바랍니다. 더 많은 관련 내용을 보시려면 PHP 중국어 웹사이트를 주목해주세요!

관련 권장 사항:

Vue 기반 지연 로딩 플러그인 vue-view-lazy 소개

Vue+mui는 이미지의 로컬 캐싱을 구현합니다

위 내용은 vue는 팔로우 버튼을 클릭한 후 적시에 목록 업데이트를 구현합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.