赞
踩
- <template>
- <view class="">
- <view>
- <button @tap="startRecord">开始录音</button>
- <button @tap="endRecord">停止录音</button>
- <button @tap="playVoice">播放录音</button>
- </view>
- <button @tap="junp">选择文件</button>
- <!-- <luch-audio
- v-if="voicePath"
- :src="voicePath"
- :play.sync="audioPlayNew"
- ></luch-audio> -->
- </view>
- </template>
-
- <script>
- const recorderManager = uni.getRecorderManager();
- const innerAudioContext = uni.createInnerAudioContext();
-
- innerAudioContext.autoplay = true;
-
- export default {
- data() {
- return {
- text: 'uni-app',
- voicePath: '',
- url: ''
- };
- },
- onLoad() {
- let self = this;
- recorderManager.onStop(function(res) {
- console.log('recorder stop' + JSON.stringify(res));
- self.voicePath = res.tempFilePath;
- self.downloadFile(res.tempFilePath);
- });
- },
- methods: {
- junp() {
- uni.navigateTo({
- url: '../xuanze/xuanze'
- });
- },
- startRecord() {
- console.log('开始录音');
-
- recorderManager.start();
- },
- endRecord() {
- console.log('录音结束');
- recorderManager.stop();
- },
- playVoice() {
- console.log('播放录音');
- if (this.voicePath) {
- innerAudioContext.src = this.voicePath;
- innerAudioContext.play();
- }
- },
- downloadFile(url) {
- console.log(url);
- const downloadTask = uni.downloadFile({
- url: url, //文件链接
- success: res => {
- if (res.statusCode === 200) {
- uni.saveFile({
- tempFilePath: res.tempFilePath,
- success: red => {
- console.log(1, red.savedFilePath);
- uni.showToast({
- icon: 'none',
- mask: true,
- title: '文件已保存:' + red.savedFilePath, //保存路径
- duration: 3000
- });
- setTimeout(() => {
- //打开文档查看
- uni.openDocument({
- filePath: red.savedFilePath,
- success: function(res) {
- console.log('打开文档成功');
- }
- });
- }, 3000);
- }
- });
- }
- },
- fail: err => {
- uni.showToast({
- icon: 'none',
- mask: true,
- title: '失败请重新下载'
- });
- }
- });
- }
- // //*** 先删除本地文件
- // deleteFile(url) {
- // uni.getSavedFileList({
- // success:(res)=> {
- // if (res.fileList.length > 0) {
- // uni.removeSavedFile({
- // filePath: res.fileList[0].filePath,
- // complete: function(res) {
- // this.downloadFile(url)
- // }
- // });
- // } else{
- // this.downloadFile(url)
- // }
- // }
- // });
- // },
- // //*** 再下载文件
- // downloadFile(url){
- // uni.downloadFile({
- // url: url, //下载地址接口返回
- // success: (data) => {
- // if (data.statusCode === 200) {
- // //文件保存到本地
- // uni.saveFile({
- // tempFilePath: data.tempFilePath, //临时路径
- // success: function(res) {
-
- // // this.url = res.savedFilePath;
- // uni.setStorageSync('url', res.savedFilePath);
- // }
- // });
- // }
- // },
- // fail: (err) => {
- // uni.showToast({
- // icon: 'none',
- // mask: true,
- // title: '失败请重新下载',
- // });
- // },
- // });
- // },
- }
- };
- </script>
-
- <style>
- .content {
- display: flex;
- flex-direction: column;
- align-items: center;
- justify-content: center;
- }
-
- .logo {
- height: 200rpx;
- width: 200rpx;
- margin-top: 200rpx;
- margin-left: auto;
- margin-right: auto;
- margin-bottom: 50rpx;
- }
-
- .text-area {
- display: flex;
- justify-content: center;
- }
-
- .title {
- font-size: 36rpx;
- color: #8f8f94;
- }
- </style>
-

Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。