发布于 5年前

vue 每次点击请求数据,如何再回去点击之前点击过的按钮就不请求数据呢?

<p 
v-for="(v,i) in nav" :key="i" 
class="nav" 
:class="i==index?'active':''" 
@click="navClick(i,v.catgCode,v.catgName)"
>
{{v.catgName}}
</p>

<div class="item_wp" v-for="(v,i) in nav" :key="i" v-show="index==i">
    <div 
    class="item" 
    v-for="(j,i) in result" :key="i" 
    @click="blinkParticulars(j.shopId,j.skuId,j.promId)"
    >

事件
navClick(val){
    this.index = i;
    this.code = code;
    this.result = [];
    this.pageNumber = 1;
    this.getSpecial();
},

tab 切换的写法 类名为 item的元素会根据 nav 的数量增加,每次点击nav的时候传参请求接口

比如 导航有a b c 三个,点了a 点b 回去点a的时候 如何停止触发this.getSpecial(); 这个请求呢?

最佳答案

// 用一个数组保存点击国的tab
clickTab: []
navClick(val){
    this.index = i;
    this.code = code;
    this.result = [];
    this.pageNumber = 1;
    if(this.clickTab.indexOf(i)!==-1){
        this.clickTab.push(i);
        this.getSpecial();
    }
},
©2020 edoou.com   京ICP备16001874号-3