微信小程序实现录音Record功能

 更新时间:2021年05月09日 09:59:56   作者:勘察加熊人  
这篇文章主要为大家详细介绍了微信小程序实现录音Record功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了微信小程序实现录音Record功能的具体代码,供大家参考,具体内容如下

布局

<!--pages/record/record.wxml-->
<view>
 <button 
  class="tui-menu-list"
  bindtap="startRecordAac" 
  type="primary">录音开始(aac)</button>
 <button 
  class="tui-menu-list"
  bindtap="startRecordMp3" 
  type="primary">录音开始(mp3)</button>
 <button 
  class="tui-menu-list" 
  bindtap="stopRecord" 
  type="primary">录音结束</button>
 <button 
  class="tui-menu-list"
  bindtap="playRecord" 
  type="primary">播放录音</button>
</view>

样式:

/* pages/record/record.wxss */
 
.tui-menu-list{
  flex-direction: row;
  margin: 20rpx;
  padding: 20rpx;
}

开始录音和停止录音

// pages/record/record.js
Page({
 
  /**
   * 页面的初始数据
   */
  data: {
 
  },
 
  onLoad:function (options) {
    var that = this
    this.recorderManager = wx.getRecorderManager();
    this.recorderManager.onError(function () {
      that.tip("录音失败!");
    })
    this.recorderManager.onStop(function (res) {
      that.setData({
        src:res.tempFilePath
      })
      console.log(res.tempFilePath)
      that.tip("录音完成!")
    })
    this.innerAudioContext = wx.createInnerAudioContext()
    this.innerAudioContext.onError((res) =>{
      that.tip("播放录音失败!")
    })
  },
 
  //提示
  tip:function (msg) {
    wx.showModal({
      cancelColor: 'cancelColor',
      title:'提示',
      content:msg,
      showCancel:false
    })
  },
 
  //录制aac
  startRecordAac:function () {
    this.recorderManager.start({
      format:'aac'
    })
  },
 
  //录制mp3
  startRecordMp3:function () {
    this.recorderManager.start({
      format:'mp3'
    })
  },
 
  //停止录音
  stopRecord:function () {
    this.recorderManager.stop()
  },
 
  //播放录音
  playRecord:function () {
    var that = this
    var src = this.data.src
    if (src='') {
      this.tip('请先录音')
      return
    }
    this.innerAudioContext.src = this.data.src
    this.innerAudioContext.play()
  }
 
  
})

效果图:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • uni-app使用swiper实现轮播图的方法

    uni-app使用swiper实现轮播图的方法

    做音乐播放器小程序时,因为swiper的问题耽误不少时间,所以下面这篇文章主要给大家介绍了关于uni-app使用swiper实现轮播图的相关资料,需要的朋友可以参考下
    2022-11-11
  • 微信小程序获取手机号的踩坑记录

    微信小程序获取手机号的踩坑记录

    这篇文章主要给大家介绍了关于微信小程序获取手机号踩坑的相关资料,详细记录了踩坑的过程以及解决的方法和猜想,通过示例代码以及图片介绍的非常详细,需要的朋友可以参考下
    2021-06-06
  • JavaScript编程的10个实用小技巧

    JavaScript编程的10个实用小技巧

    尽管我使用Javascript来做开发有很多年了,但它常有一些让我很惊讶的小特性。对于我来说,Javascript是需要持续不断的学习的。
    2014-04-04
  • 50行代码实现Webpack组件使用次数统计

    50行代码实现Webpack组件使用次数统计

    这篇文章主要介绍了50行代码实现Webpack组件使用次数统计,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-03-03
  • JavaScript实现拖拽排序的方法详解

    JavaScript实现拖拽排序的方法详解

    可拖拽排序的菜单效果大家想必都很熟悉,本次我们通过一个可拖拽排序的九宫格案例来演示其实现原理,感兴趣的小伙伴可以跟随小编一起学习一下
    2022-05-05
  • javascript+canvas制作九宫格小程序

    javascript+canvas制作九宫格小程序

    这篇文章主要介绍了javascript+canvas制作九宫格小程序,效果非常棒,这里推荐给有需要的小伙伴们
    2014-12-12
  • es6 symbol的实现方法示例

    es6 symbol的实现方法示例

    这篇文章主要介绍了es6 symbol的实现方法示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-04-04
  • javascript面向对象程序设计(一)

    javascript面向对象程序设计(一)

    这篇文章主要介绍了javascript面向对象程序设计,分享给大家一段代码,注释里讲解的非常详细,有助于我们理解面向对象,这里推荐给大家。
    2015-01-01
  • 如何让一个层关闭之后,就算刷新页面了也不显示。除非关闭页面再次打开

    如何让一个层关闭之后,就算刷新页面了也不显示。除非关闭页面再次打开

    这个功能,一般可用于广告的显示,当关闭后,就不显示,除非重新关闭打开,增加用户体验
    2008-09-09
  • JavaScript变速动画函数封装添加任意多个属性

    JavaScript变速动画函数封装添加任意多个属性

    这篇文章主要介绍了JavaScript变速动画函数封装添加任意多个属性 ,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-04-04

最新评论