#vue# 【十六】如何从一个页面跳转到另一个页面的指定tab选项卡?

#vue#如何从一个页面跳转到另一个页面的指定tab选项卡

需求:
从一个页面点击跳转到另一个页面指定的tab选项卡,如图
当前页面:
在这里插入图片描述
点击“完整时间轴”以及“更多文章”,会跳转到另一个页面,并且会对应好相应的tab页面

tab页面:
在这里插入图片描述
在这里插入图片描述
思路:
(1)在当前页面,我们需要通过绑定点击事件,来获取跳转到tab页面的id值

当前页面:


<div class="time-line" @click="getTime()">
      <p>完整时间轴
      <i class="iconfont iconmore-icon"
      style="font-size:.12rem;
      color: #1A1A1A;
      margin-left:.05rem">
      </i>
      </p>
</div>

 <div class="article-icon" @click="getArticle()" >
       <p>更多文章
       <i class="iconfont iconmore-icon"
       style="font-size: .12rem;
      color: #1A1A1A;
      margin-left: .05rem">
      </i>
      </p>
</div>

<script>
import ArticleTitle from "@/components/child/ArticleTitle"
export default {
    name: "articles",
    components: {ArticleTitle},
    props:['articleList'],
    data () {
        return {
            aTitle:"学习"
        }
    },
    methods:{
        getTime() {
            this.$router.push({ name: 'history', query: {myTab:1} })
        },
        getArticle() {
            this.$router.push({ name: 'history', query: {myTab:2} })
        }
    }
}
//name:‘Title’,这里的title是tab页面的name 

myTab是自定义的,为了获取tab选项卡的下标
(主要是通过query,获取地址id)

</script>

(2)在tab页面,将我们拿到的mytab与tab里面的值,相对应就可以了

tab页面

  <div class="history-tab">
            <div class="tab">
                <div class="tab-item" :class="{'active':onShow}" @click="getTime()" >
                    时间轴
                </div>
                <div class="tab-item" :class="{'active':offShow}" @click="getList()" >
                    文章
                </div>
            </div>
        </div>
export default {
    name: "history",
    data () {
        return {
            linklist: [],
            currentPage3: 1,
            totalPage:0,
            totalNumber:0,
            title:'',
            onShow:true,
            offShow:false
        }
     },

//主要是看这里!!!
让一个变量来接收我们拿到的myTab的ID
然后进行判断,当tab全等于1的时候,就显示当前页面,否则就显示另一个tab页面
(this.getTime()、this.getList()是tab页面内容的显示以及隐藏,在下面有进行定义方法,所以可以直接使用)

当tab里面的值比较多的时候,我们可以所以索引的方式来获取
当tab等于这个索引的时候,就显示这个id的内容
    mounted() {
        let tab = parseInt(this.$route.query.myTab);
        if (tab === 1){
            this.getTime()
        }else{
            this.getList()
        }
    },


    created() {
        this.getInfo(1)
    },
    methods:{
        changePage(i) {
            this.getInfo(i)
        },
        getInfo(i) {
            articleIndex({
                limit_rows:15,
                page: i
            }).then(res => {
                let myData = res.data;
                this.linklist = myData.list;
                this.totalPage = myData.total_page;
                this.totalNumber = myData.total_number
            })
        },
        toDetail(id){
            this.$router.push(`/articleDetails/${id}`) ;
        },
        getTime() {
            this.onShow = true;
            this.offShow = false;
        },
        getList() {
            this.onShow = false;
            this.offShow = true;
        }
    }
}

</script>

  • 1
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要实现一个页面跳转到另一个页面选项卡指定页上,可以使用以下几种方法。 第一种方法是使用HTML语言和JavaScript脚本。在源页面,我们可以使用`<a>`标签来定义一个链接,并为其设置`href`属性为目标页面的URL地址。然后,我们可以在`<a>`标签添加一个`target`属性,并将其值设置为选项卡的名称或标识符。在目标页面,我们可以使用JavaScript脚本来捕捉URL的参数,解析出选项卡名称或标识符,并使用`document.getElementById`方法来获取对应的选项卡元素。然后,我们可以使用`click`事件触发器来自动激活或打开该选项卡。 第二种方法是使用前端框架,如React或Vue.js。在这种情况下,我们可以使用框架提供的路由功能来定义页面之间的跳转选项卡之间的切换。我们可以在路由定义或链接组件设置选项卡的名称或标识符作为路由参数,并在目标页面的组件根据参数值来动态显示或激活选项卡。 第三种方法是使用后端语言,如PHP或Python。在这种情况下,我们可以在源页面通过URL参数将选项卡的名称或标识符传递给目标页面。然后,我们可以在目标页面的后端代码根据参数值来动态渲染或激活选项卡。 无论使用哪种方法,重要的是要确保在页面加载完成之后再进行选项卡的切换。这可以通过将JavaScript代码放置在`window.onload`事件处理程序来实现,或者使用框架提供的生命周期钩子函数来实现。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值