vue慕课网音乐项目手记:58-播放控件添加歌曲的实现

首先:应该创建一个单文件组件,样式如下:

<template>
  <transition class="slide">
    <div class="add-song" v-show="showFlag" @click.stop>
      <div class="header">
        <h1 class="title">添加歌曲到列表</h1>
        <div class="close">
          <i class="icon-close" @click="hide"></i>
        </div>
      </div>
      <div class="search-box-wrapper">
      </div>
      <div class="shortcut" v-show="!query"></div>
      <div class="search-result" v-show="query">
      </div>
    </div>
  </transition>
</template>
<style lang="stylus" scoped>
  @import '~common/stylus/variable'
  @import '~common/stylus/mixin'

  .add-song
    position fixed
    top 0
    left 0
    right 0
    bottom 0
    z-index 200
    background $color-background
    &.slide-enter-active, &.slide.drop-leave-active
      transition all 0.3s
    &.slide-enter, &.slide-leave-to
      transform translate3d(100%, 0, 0)
    .header
      position relative
      height 44px
      text-align center
      .title
        line-height 44px
        font-size $font-size-large
        color $color-text
      .close
        position absolute
        top 0
        right 8px
        .icon-close
          display block
          padding 12px
          font-size 20px
          color $color-theme
    .search-box-wrapper
      margin 20px
    .shortcut
      .list-wrapper
        position absolute
        top 165px
        bottom 0
        width 100%
        .list-scroll
          height 100%
          overflow hidden
          .list-inner
            padding 20px 30px
    .search-result
      position fixed
      top 124px
      bottom 0
      width 100%
    .tip-title
      text-align center
      padding 18px 0
      font-size 0
      .icon-ok
        font-size $font-size-medium
        color $color-theme
        margin-right 4px
      .text
        font-size $font-size-medium
        color $color-text
</style>

然后添加事件:

methods: {
    show () {
      this.showFlag = true
    },
    hide () {
      console.log(1)
      this.showFlag = false
    }
  },

在父组件里面去调用show方法

showPlaylist () {
      this.$refs.playlist.show()
    },
发布了169 篇原创文章 · 获赞 34 · 访问量 10万+

猜你喜欢

转载自blog.csdn.net/weixin_40814356/article/details/80520922