vue中使用v-for循环li 怎么点击每个li中的em给添加class删除兄弟元素

<html lang="en">

<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>tab</title>
<script src="https://cdn.jsdelivr.net/npm/vue@2.5.17/dist/vue.js"></script>
<style>
html,
body {
height: 100%;
margin: 0;
padding: 0;
background-color: #58596b;
} .active {
color: #fff;
background: #e74c3c;
} #app {
width: 800px;
height: 400px;
margin: 100px auto;
background-color: #fff;
box-shadow: 0 1px 3px rgba(0, 0, 0, .1);
} li {
margin-bottom: 20px;
} a {
padding: 15px;
}
</style>
</head> <body>
<div id="app">
<ul>
<li v-for="item ,index in dataList">
<span>{{item.title}}</span>
<a href="javascript:void(0)" v-for="option,i in item.children" @click='addoption(index,i)' :class="{active:item.index===i}">
{{option}}
</a>
</li>
</ul>
</div>
<script>
let data = [{
title: "菜1",
children: ["酸", "甜", "苦"]
}, {
title: "菜2",
children: ["酸", "甜", "苦"]
}, {
title: "菜3",
children: ["酸", "甜", "苦"]
}, {
title: "菜4",
children: ["酸", "甜", "苦"]
}]
data.forEach(item => item.index = -1)
new Vue({
el: "#app",
data: {
dataList: data,
index1: -1,
},
methods: {
addoption(index, i) { 
console.log(index, i)         
this.dataList[index].index = i }
}
})
</script> </body> </html>

结果图

vue中点击不同的em添加class去除兄弟级class的更多相关文章

  1. vue中点击添加class,双击去掉class

    VUE中 html 中 <ul id="shoppingList" v-on:click="addClass($event)" class="i ...

  2. vue中点击复制粘贴功能

    1.下载clipboard.js cnpm install clipboard --save 2.引入,可以在mian.js中全局引入也可以在单个vue中引入 import Clipboard fro ...

  3. vue中点击空白处隐藏弹框(用指令优雅地实现)

    在写vue的项目的时候,弹框经常性出现,并要求点击弹框外面,关闭弹框,那么如何实现呢?且听我一一...不了,能实现效果就好 <template> <div> <div c ...

  4. 实例:vue中点击空白区域关闭某个div图层

    <template> <div class="search" ref="searchMain"> <el-input v-mode ...

  5. vue中点击屏幕其他区域关闭自定义div弹出框

    直接上代码: mounted: function () { let that = this; $(document).on('click', function (e) { let dom = $('. ...

  6. vue中点击复制粘贴功能 clipboard 移动端

    页面是由 v-for 循环渲染出来,要给每一个结构里面的复制按钮加一个复制功能 npm install clipboard --save    安装,如果安装处问题,多安装几次,我自己也安装了好几次 ...

  7. vue中点击按钮自动截图并下载图片

    点击一个按钮,截取对应区域的界面,才对截取的界面进行裁切并下载 下载    html2canvas    npm install html2canvas  --save 引用 : import htm ...

  8. vue中点击按钮复制内容

    <el-button type="primary" round size="mini" @click="copyUrl">复制u ...

  9. vue.js 作一个用户表添加页面----初级

    使用vue.js 制作一个用户表添加页面,实际上是把原来需要使用js写的部分,改写成vue.js的格式 首先,想象一下,先做思考,我们要添加用户表,设涉及到哪些数据,一个是用户id,一个是用户名,一个 ...

随机推荐

  1. Flask源码之:路由加载

    路由加载整体思路: 1. 将 url = /index  和  methods = [GET,POST]  和 endpoint = "index"封装到Rule对象 2. 将Ru ...

  2. Java8 集合相关操作

    // java8 集合快速转成string List<String> cities; String citiesCommaSeparated = String.join(",&q ...

  3. go ---变量数据结构调试利器 go-spew

    我们在使用Golang(Go语言)开发的过程中,会通过经常通过调试的方式查找问题的原因,解决问题,尤其是当遇到一个很棘手的问题的时候,就需要知道一段代码在执行的过程中,其上下文的变量对应的数据,以便进 ...

  4. 使用StringBuilder构建字符串

    使用StringBuilder构建字符串确实可以提高效率,比“+”要高效不少.但使用时也有一些坑: 首先,我们指定一个StringBuilder,并设置其长度. StringBuilder build ...

  5. C# vb .net实现黑白效果特效滤镜

    在.net中,如何简单快捷地实现Photoshop滤镜组中的黑白效果效果呢?答案是调用SharpImage!专业图像特效滤镜和合成类库.下面开始演示关键代码,您也可以在文末下载全部源码: 设置授权 第 ...

  6. Java知识回顾 (16)常用操作的Java示例

    环境设置 Java 实例 – 如何编译一个Java 文件? Java 实例 – Java 如何运行一个编译过的类文件? Java 实例 - 如何执行指定class文件目录(classpath)? Ja ...

  7. 面试总结之Data Science

    数据科学家面试如何准备? https://mp.weixin.qq.com/s/uFJ58az8WRyaXT2nibK02g 2020 年算法 / 数据分析面试数学考点梳理 https://mp.we ...

  8. Flink入门 - 窗口函数

    /* * ProcessWinFunOnWindow */ final StreamExecutionEnvironment streamExecutionEnvironment = StreamEx ...

  9. 子网掩码与ip地址的关系

    1.什么是ip地址 在网络中,所有的设备都会被分配一个地址.这个地址就相当于某条路上的XX号XX房.其中[号]对应的号码是分配了整个子网的,而[房]对应的号码是分配给子网中的计算机的,这就是网络中的地 ...

  10. shell EOF 用户自定义终止符

    #!/bin/bash ftp -n << EOF user guest 123456 binary cd /home/ prompt mget * close bye EOF 使用Tab ...