老师请问这个字母表的滑动为什么没有实现呢

老师请问这个字母表的滑动为什么没有实现呢

<template>

    <ul class="list">

        <li class="item"

        v-for="item of letters"

        :key="item"

        @touchstart="handleTouchStart"

        @touchmove="handleTouchMove"

        @touchend="handleTouchEnd"

        @click="handleLetterClick"

        >{{item}}

        </li>

    </ul>

</template>


<script>

export default {

  name: 'CityAlphabet',

  props: {

    cities: Object

  },

  data () {

    return {

      touchStatus: false,

      startY: 0,

      timer: null

    }

  },

  updata () {

    this.startY = this.$refs['A'][0].offsetTop

  },

  computed: {

    letters () {

      const letters = []

      for (let i in this.cities) {

        letters.push(i)

      }

      return letters

    }

  },

  methods: {

    handleLetterClick (e) {

      this.$emit('change', e.target.innerText)

    },

    handleTouchStart () {

      this.touchStatus = true

    },

    handleTouchMove (e) {

      if (this.touchStatus) {

        if (this.timer) {

          clearTimeout(this.timer)

        }

        this.timer = setTimeout(() => {

          const touchY = e.touches[0].clientY - 79

          const index = Math.floor((touchY - this.startY) / 20)

          if (index >= 0 && index < this.letters.length) {

            this.$emit('change', this.letters[index])

          }

        }, 16)

      }

    },

    handleTouchEnd () {

      this.touchStatus = false

    }

  }

}

</script>


<style lang="stylus" scoped>

  @import '~styles/varibles.styl'

  .list

    display: flex

    flex-direction: column

    justify-content: center

    position: absolute

    top: 1.58rem

    right: 0

    bottom: 0

    width: .4rem

    .item

      line-height: .4rem

      text-align: center

      color: $bgColor

</style>



正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

2回答
好帮手慕星星 2020-07-10 09:42:56

同学你好,建议将自己修改后的代码粘贴上来,老师帮助测试下,看看是哪里有问题。

好帮手慕慕子 2020-07-09 11:02:07

同学你好,老师在源码中测试同学粘贴的这部分代码,代码中存在的问题解答如下:

1、updated单词拼写有误,建议修改:

http://img1.sycdn.imooc.com//climg/5f06884e0906aed606160117.jpg

2、对应的字母元素没有添加ref属性,导致无法获取到字母A的offsetTop属性值,建议添加上

http://img1.sycdn.imooc.com//climg/5f06888509a4df1d05140399.jpg

同学可以再测试下,祝学习愉快~

  • 提问者 慕标7286559 #1
    请问老师为什么修改后还是不能滑动呢
    2020-07-09 19:59:06
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师