当前位置: 移动技术网 > IT编程>脚本编程>vue.js > vue头部导航动态点击处理方法

vue头部导航动态点击处理方法

2018年11月03日  | 移动技术网IT编程  | 我要评论

1515lu.om,艺龙旅游指南,中国鸣网

1:data中两个变量,

data: {
       nav:['头条1','头条2'],
       ins:0,//记录当前点击的index
      },

2:              

 <div v-for="(item,index) in nav" :class="index == ins ? 'swiper-slide swiper_active' : 'swiper-slide' " @click="topclick(index)">{{item}}</div>

3:mothods:

topclick:function(i){
        var t=this;
        t.ins=i;
      },

ps:下面看下vue实现动态头部

h5项目中,经常用到的头部是样式是一致的,只是左右按钮和中间标题会不一致。

vue主打组件化,为了减少代码冗余,可以将头部提取成一个单独的组件。接下来考虑是否需要左右按钮,是否固定在页面上不动,中间标题是否为动态。

先写一个简单的头部,position设置成变量customfixed。左右按钮通过<slot>来控制。中间标题设置成变量customtitle通过父子组件传值过来。

设置好样式以后给customfixed和customtitle默认值和类型。

<template>
  <div id="header" :style="{'position' : customfixed ? 'fixed' : 'absolute'}">
   <slot name="left"></slot>
   {{customtitle}}
   <slot name="right"></slot>
  </div>
</template>

<script>
  export default {
   name: "my-header",
   props:{
    customtitle : {
      type : string,
      default : '标题'
     },
    customfixed: {
      type: boolean,
      default: false
    }
   }
  }
</script>

<style scoped>
#header{
 width: 100%;height: 40px;background: #666;color: white;text-align: center;line-height: 40px;
 position: absolute;left:0;top: 0;z-index: 10;
}
 #header button {height: 100%;padding: 0 50px;}
 #header button:nth-of-type(1){float: left}
 #header button:nth-of-type(2){float: right}
</style>

在用到头部的地方:

<template>
 <div id="app">
  <my-header custom-title="通讯录" custom-fixed>
   <button @click="backbtn" slot="left">返回</button>
   <button @click="homebtn" slot="right">主页</button>
  </my-header>
 </div>
</template> 

总结

以上所述是小编给大家介绍的vue头部导航动态点击处理方法,希望对大家有所帮助

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网