首页 > 编程 > JavaScript > 正文

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

2019-11-19 12:35:38
字体:
来源:转载
供稿:网友

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头部导航动态点击处理方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对武林网网站的支持!

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表