list-view-multiplex.uvue 1.9 KB
Newer Older
1
<template>
2 3 4 5 6 7 8 9
  <view style="flex: 1;">
    <scroll-view direction="horizontal" style="flex-direction: row;">
      <button class="button_item" @click="delayShow">测试延时显示</button>
      <button class="button_item" @click="switchItemContent">修改item子元素</button>
    </scroll-view>
    <list-view v-show="list_show" id="listview" style="flex: 1;" show-scrollbar=false @scrolltolower="onScrollTolower">
      <list-item v-for="index in item_count" class="item" @click="itemClick(index)">
        <text >item-------<text>{{index}}</text></text>
shutao-dc's avatar
shutao-dc 已提交
10
        <text v-show="displayArrow" >item-------<text>{{index}}</text></text>
11
        <switch :checked="true"></switch>
12 13 14
      </list-item>
    </list-view>
  </view>
15 16 17 18 19 20 21
</template>

<script>
	export default {
		data() {
			return {
				item_count: 20,
shutao-dc's avatar
shutao-dc 已提交
22
        list_show: true,
23 24
        listViewElement: null as UniListViewElement|null,
        displayArrow: false
25 26 27 28 29 30 31
			}
		},
    onReady() {
      this.listViewElement = uni.getElementById<UniListViewElement>('listview')
    },
		methods: {
      onScrollTolower(_: ScrollToLowerEvent) {
32
        setTimeout(() => {
33 34 35 36 37 38
          this.item_count += 20
        }, 300)
      },
      //用于自动化测试
      listViewScrollByY(y : number) {
        this.listViewElement?.scrollBy(0, y)
shutao-dc's avatar
shutao-dc 已提交
39 40 41
      },
      itemClick(index: number) {
        console.log("itemTextClick---"+index)
shutao-dc's avatar
shutao-dc 已提交
42 43 44 45 46 47 48
      },
      delayShow() {
        this.list_show = !this.list_show
        this.item_count += 20
        //延时显示list-view 测试list-item延时显示bug
        setTimeout(()=>{
          this.list_show = !this.list_show
49
        }, 400)
50 51 52
      },
      switchItemContent() {
        this.displayArrow = !this.displayArrow
53 54 55 56 57 58 59 60
      }
		}
	}
</script>

<style>
  .item {
    padding: 15px;
雪洛's avatar
雪洛 已提交
61
    margin: 0 0 5px 0;
62 63 64
    background-color: #fff;
    border-radius: 5px;
  }
shutao-dc's avatar
shutao-dc 已提交
65 66 67
  .button_item {
    width: 200px;
  }
68 69

</style>