【微信小程序】快进来弹钢琴啦~钢琴小程序源码分享

效果展示

今天给大家分享一个微信小程序案例——钢琴小程序。学会了以后,自己也能弹奏出优美的曲子了。程序中一共有四首曲子《茉莉花》、《小星星》、《两只老虎》、《上学歌》。

小星星

先听一听我弹奏的小星星吧,文章末尾有个投票,可以投一下票哦~

https://live.csdn.net/v/206209

钢琴音符放在我主页的资源里了,大家可以自主下载。

代码展示

现在我们开始写代码了,我用的是微信开发者工具,需要大家自己下载注册哟~
在这里插入图片描述

请添加图片描述

piano.js代码

// pages/piano/piano.js
Page({

  /**
   * 页面的初始数据
   */
  data: {
    keys: [
      {
        num: 1,
        name: "C3"
      },
      {
        num: 2,
        name: "D3"
      },
      {
        num: 3,
        name: "E3"
      },
      {
        num: 4,
        name: "F3"
      },
      {
        num: 5,
        name: "G3"
      },
      {
        num: 6,
        name: "A3"
      },
      {
        num: 7,
        name: "B3"
      },
      {
        num: 1,
        name: "C4"
      },
      {
        num: 2,
        name: "D4"
      },
      {
        num: 3,
        name: "E4"
      },
      {
        num: 4,
        name: "F4"
      },
      {
        num: 5,
        name: "G4"
      },
      {
        num: 6,
        name: "A4"
      },
      {
        num: 7,
        name: "B4"
      },
      {
        num: 1,
        name: "C5"
      },
      {
        num: 2,
        name: "D5"
      },
      {
        num: 3,
        name: "E5"
      },
      {
        num: 4,
        name: "F5"
      },
      {
        num: 5,
        name: "G5"
      },
      {
        num: 6,
        name: "A5"
      },
      {
        num: 7,
        name: "B5"
      },
    ]
  },
  play(e){
   var ac= wx.createInnerAudioContext();
   ac.src=`/music/${e.currentTarget.dataset.name}.mp3`;
   ac.play();
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {

  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})

piano.json代码

{
  "usingComponents": {},
  "pageOrientation":"landscape",
  "navigationBarBackgroundColor": "#000"
}

piano.wxml代码

<!--pages/piano/piano.wxml-->
<swiper>
  <swiper-item>
    <view class="lrc">
      <view>茉莉花</view>
      <view>3 3 5 6 1 1 6 5 5 6 5</view>
      <view>3 3 5 6 1 1 6 5 5 6 5</view>
      <view>5 5 5 3 5 6 6 5</view>
      <view>3 2 3 5 3 2 1 1 2 1</view>
    </view>
  </swiper-item>
  <swiper-item>
    <view class="lrc">
      <view>小星星</view>
      <view>1 1 5 5 6 6 5 </view>
      <view>4 4 3 3 2 2 1 </view>
      <view> 5 5 4 4 3 3 2 </view>
      <view> 6 6 5 4 4 3 3 2 2 1</view>
    </view>
  </swiper-item>
  <swiper-item>
    <view class="lrc">
      <view>两只老虎</view>
      <view>1 2 3 1 1 2 3 1 3 4 5</view>
      <view>3 4 5 5 6 5 4 3 1</view>
      <view>5 6 5 4 3 1 2 5 1</view>
      <view>2 5 1 2 5 1 2 5 1</view>
    </view>
  </swiper-item>
  <swiper-item>
    <view class="lrc">
      <view>上学歌</view>
      <view>1 2 3 1 5</view>
      <view>6 6 1 6 5</view>
      <view>6 6 1 5 6 3</view>
      <view>6 5 3 5 3 1 2 3 1</view>
    </view>
  </swiper-item>
</swiper>

<view class="box">
  <view class="bar" hover-class="active" bindtap="play" wx:for="{{keys}}" data-name="{{item.name}}">
    <view class="name">{{item.name}}</view>
    <view class="num">{{item.num}}</view>
  </view>
</view>

piano.wxss代码

/* pages/piano/piano.wxss */
page {
  background-color: black;
}

.box {
  width: 100%;
  height: 160rpx;
  position: absolute;
  bottom: 0;
  display: flex;
  justify-content: space-around;
}

.bar {
  height: 160rpx;
  background-color: #fff;
  border-radius: 0 0 15rpx 15rpx;
  box-shadow: 0 0 5px #000;
  margin: 1 5rpx;
  flex-grow: 1;
}

.name {
  width: 25rpx;
  height: 20rpx;
  background-color: cadetblue;
  text-align: center;
  line-height: 20rpx;
  margin: 20px auto;
}

.num {
  width: 20rpx;
  height: 20rpx;
  background-color: darkorange;
  text-align: center;
  line-height: 20rpx;
  margin: 60rpx auto 0;
}
.lrc{
  width: 100%;
  height: auto;
  text-align: center;
  line-height: 25rpx;
  color: #fff;
}
.active{
  box-shadow: none;
  background-color: #eee;
}

茉莉花

https://live.csdn.net/v/206208

写在最后

希望我的分享能够帮助到更多的人,如果觉得我的分享有帮助的话,请大家一键三连支持一下哦~
原创不易,期待你的关注与支持~
点赞❤+收藏❤+评论❤
之后我会继续更新前端学习小知识,关注我不迷路~

  • 23
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 38
    评论
### 回答1: 微信小程序demo是一份简单的点餐微信小程序的源码。该源码是基于微信小程序开发框架进行开发的,具有实际应用场景和功能。在该源码中,用户可以浏览菜单、选择菜品、添加到购物车并进行结算等操作。 该点餐微信小程序的主要功能包括以下几个方面: 1. 餐厅菜单展示:用户可以浏览餐厅提供的菜品,并查看菜品的详细信息,包括图片、名称、价格等。 2. 菜品选择:用户可以根据自己的需求,在菜单中选择自己喜欢的菜品并进行添加到购物车操作。 3. 购物车管理:用户可以在购物车中查看已添加的菜品列表,可以增加或减少数量,也可以删除不需要的菜品。 4. 结算功能:用户可以在购物车中选择结算,系统会计算出菜品的总价,并提供支付方式供用户选择。 5. 订单管理:用户可以查看自己的订单历史记录,包括订单的详细信息和状态。 该微信小程序demo源码是一个基础的点餐系统的雏形,可根据实际需求添加更多功能,比如添加菜品评论功能、菜品搜索功能、用户登录注册功能等,使其更加完善和实用。同时,该源码也提供了微信小程序开发的参考和学习价值,可以帮助开发者更好地理解和掌握微信小程序的开发技术。 ### 回答2: 点餐微信小程序demo源码是一种基于微信小程序开发的点餐系统的示例程序。该源码提供了用户点餐、浏览菜单、下单、结算等功能。 该小程序的实现过程主要包括以下几个关键步骤: 1. 用户注册与登录:用户可以通过微信登录或注册一个账号,并进行绑定。 2. 菜单浏览:用户可以在小程序中浏览餐厅的菜单,查看菜品图片、价格、口味等详细信息。 3. 购物车操作:用户可以选择菜品添加到购物车中,并对购物车中的商品进行增删改操作。 4. 下单与支付:用户可以点击下单按钮,将购物车中的商品生成订单,并选择支付方式进行支付。 5. 订单管理:用户可以在小程序中查看自己的历史订单,包括订单的状态、订单详情等,并可以进行评价、退款等操作。 6. 个人中心:用户可以在个人中心页面查看自己的信息,包括姓名、手机号码、地址等。 小程序前端开发使用了微信小程序的框架,主要采用WXML、WXSS和JavaScript进行开发。后端采用了服务器端的技术来处理用户的请求,并与数据库进行交互。 总结来说,点餐微信小程序demo源码提供了一个完整的点餐系统的示例,可以帮助开发者理解微信小程序开发的流程和技术,并可以根据实际需求进行相关功能的扩展和修改。 ### 回答3: 微信小程序是一种可以在微信平台上进行开发和使用的应用程序。点餐微信小程序是一种常见的微信小程序,用于快速、方便地进行餐厅点餐服务。 点餐微信小程序通常包含以下功能: 1. 用户注册登录:用户可以通过微信账号快速注册登录到点餐小程序,以便享受更多服务和功能。 2. 餐厅菜单展示:通过小程序展示餐厅的菜单,包括菜品的名称、价格和描述等信息,用户可以通过浏览菜单选择自己喜欢的菜品。 3. 菜品搜索和筛选:为了方便用户查找菜品,小程序通常提供菜品搜索和筛选功能,用户可以根据关键词或特定的条件进行快速查找。 4. 菜品详情展示:用户可以点击菜品查看详细的菜品信息,包括图片、介绍、配料、口味等。 5. 购物车和下单:用户可以将选好的菜品添加到购物车中,小程序会实时计算总价。用户可以在购物车中增删菜品,最终选择下单。 6. 订单管理:用户可以查看自己的订单信息,包括当前订单状态、支付情况、配送时间等。同时,用户还可以对订单进行取消、修改等操作。 7. 支付功能:小程序通常会集成微信支付功能,用户可以通过微信支付进行菜品支付。 8. 评价和反馈:用户可以对菜品进行评价和反馈,为其他用户提供参考和改进意见。 以上是一个典型的点餐微信小程序的功能和特点,具体实现可以结合开发者的需求进行进一步的定制和扩展。希望以上回答能够帮助到您!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 38
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小魔女千千鱼

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值