<template>
<button @click="playVoice">播放语音</button>
</template>
<script>
const synth = window.speechSynthesis;
const msg = new SpeechSynthesisUtterance();
export default {
data() {
return {};
},
methods: {
playTips() {
var tips = '开始播放语音,请注意';
this.handleSpeak(tips); //播放语音内容
this.$confirm(tips, '提示', {
dangerouslyUseHTMLString:true,
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
this.handleStop() // 停止,不用入参
。。。。。。点击确定时,业务处理逻辑
}
})
},
// 语音播报的函数
handleSpeak(text) {
msg.text = text;
msg.lang = "zh-CN"; // 使用的语言:中文
msg.volume = 1; // 声音音量:1
msg.rate = 1; // 语速:1
msg.pitch = 1; // 音高:1
synth.speak(msg); // 播放
},
// 语音停止
handleStop(e) {
msg.text = e;
msg.lang = "zh-CN";
synth.cancel(msg);
}
}
};
</script>