blob: c894258e1f8adf5c506765e8adf9dff7a2ccb1fa [file] [log] [blame]
<template>
<div>
<list class="list">
<cell
v-for="(v,i) in rows"
append="tree"
:index="i"
:key="i"
class="row"
@appear="onappear(i, $event)"
@disappear="ondisappear(i, $event)">
<div class="item">
<text class="item-title">row {{v.id}}</text>
</div>
</cell>
</list>
<text class="count" :value="'Appear items: ' + appearMin + ' ~ ' + appearMax"></text>
</div>
</template>
<style scoped>
.list {
height:850px
}
.count {
font-size: 48px;
margin:10px;
}
.indicator {
height: 40px;
width: 40px;
color:#45b5f0;
}
.row {
width: 750px;
}
.item {
justify-content: center;
border-bottom-width: 2px;
border-bottom-color: #c0c0c0;
height: 100px;
padding:20px;
}
.item:active {
background-color: #00BDFF;
}
.item-title {
}
</style>
<script>
module.exports = {
methods: {
onappear: function (idx, e) {
var appearId = this.rows[idx].id;
console.log('+++++', appearId);
var appearIds = this.appearIds;
appearIds.push(appearId);
this.getMinAndMaxIds(appearIds);
},
ondisappear:function (idx, e) {
var disAppearId = this.rows[idx].id;
console.log('+++++', disAppearId);
var appearIds = this.appearIds;
var index = appearIds.indexOf(disAppearId);
if (index > -1) {
appearIds.splice(index, 1);
}
this.getMinAndMaxIds(appearIds);
},
getMinAndMaxIds:function (appearIds) {
appearIds.sort(function(a, b) {
return a - b;
});
this.appearIds = appearIds;
this.appearMax = appearIds[appearIds.length - 1];
this.appearMin = appearIds[0];
}
},
data: function () {
return {
appearMin:1,
appearMax:1,
appearIds:[],
rows:[
{id: 1},
{id: 2},
{id: 3},
{id: 4},
{id: 5},
{id: 6},
{id: 7},
{id: 8},
{id: 9},
{id: 10},
{id: 11},
{id: 12},
{id: 13},
{id: 14},
{id: 15},
{id: 16},
{id: 17},
{id: 18},
{id: 19},
{id: 20},
{id: 21},
{id: 22},
{id: 23},
{id: 24},
{id: 25},
{id: 26},
{id: 27},
{id: 28},
{id: 29}
]
}
}
}
</script>