list-view-multiplex.uvue 1.8 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 12 13
      </list-item>
    </list-view>
  </view>
14 15 16 17 18 19 20
</template>

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

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

</style>