【发布时间】:2018-09-19 16:19:58
【问题描述】:
所以我有几个组件<server-header>。它具有以下 HTML:
<span @click="$parent.changeOrder(column, $event)">
<slot></slot>
<i v-show="sortActive" class="order-arrow" :class="sort"></i>
</span>
这些组件被插入到另一个组件<server-list>。这些将是标题,单击时将对一些列表进行排序。我的目标是一次只显示一个箭头图标。
例如:如果我点击第一个标题,箭头会出现在那个标题上。如果我点击第二个标题,第一个标题的箭头会隐藏,而第二个标题上的箭头会出现。
例如,使用 jQuery 很容易做到这一点,但我对如何使用 VueJS 做到这一点有点迷茫。
【问题讨论】:
-
在
<server-list>组件内部,创建一个数据属性=selected,然后将selected == index传递给组件的props=sort-active=<server-header>就像<template v-for="(item, index) in serverlist"><server-header sort-active="selected == index"></server-header></template>一样
标签: javascript vue.js