fix: 修改流式接口

This commit is contained in:
white 2024-10-14 16:42:15 +08:00
parent 7ad93af5d4
commit 735c927c1f
5 changed files with 312 additions and 659 deletions

View File

@ -79,6 +79,7 @@
<script> <script>
var Items = ['血糖', '睡眠', '血氧', '血压', '尿酸', '梅拖', '心率', '体温', '心电图', '身体成份', '运动', '血脂', '血液成分']; var Items = ['血糖', '睡眠', '血氧', '血压', '尿酸', '梅拖', '心率', '体温', '心电图', '身体成份', '运动', '血脂', '血液成分'];
var Question = ''; var Question = '';
var Subtitles = '';
function getURLParameter(name) { function getURLParameter(name) {
name = name.replace(/[\[]/, "\\[").replace(/[\]]/, "\\]"); name = name.replace(/[\[]/, "\\[").replace(/[\]]/, "\\]");
@ -294,118 +295,148 @@
Question = `请模仿全科医生的口吻与我: ${user}对话,我最近测量的${result.dataKey}数据为${JSON.stringify(TargetData)}, #提示data_msg为值hour_minute为检测时间。#提示:“[]”表示数据为空,请在小程序上传数据。#限制:回复不要带英文,要都转化成汉语。#限制回复内容控制在150字。#限制:忽略“压力指数、疲劳指数、心肌炎风险、冠心病风险和动脉硬化”等数据。` Question = `请模仿全科医生的口吻与我: ${user}对话,我最近测量的${result.dataKey}数据为${JSON.stringify(TargetData)}, #提示data_msg为值hour_minute为检测时间。#提示:“[]”表示数据为空,请在小程序上传数据。#限制:回复不要带英文,要都转化成汉语。#限制回复内容控制在150字。#限制:忽略“压力指数、疲劳指数、心肌炎风险、冠心病风险和动脉硬化”等数据。`
console.log(Question, '========================='); console.log(Question, '问题=========================问题');
/* /*
* 调用接口 传递关键信息 文字转语音 * 调用接口 传递关键信息 文字转语音
*/ */
const xhr = new XMLHttpRequest(); const xhr = new XMLHttpRequest();
xhr.open('POST', 'http://sc2.agrimedia.cn:8787/api/user/ask', true); const url = 'https://dashscope.aliyuncs.com/api/v1/services/aigc/text-generation/generation';
const apiKey = 'sk-cbb9b5ff44374fa2a8a258160ebb292d';
// 打开请求,设置为异步
xhr.open('POST', url, true);
// 设置请求头
xhr.setRequestHeader('Content-Type', 'application/json');
xhr.setRequestHeader('Authorization', 'Bearer ' + apiKey);
xhr.setRequestHeader('X-DashScope-SSE', 'enable');
// 处理流式数据的接收(使用 progress 事件)
xhr.onprogress = function () {
const data = xhr.responseText;
// SSE 数据解析处理
const lines = data.split('\n');
lines.forEach(line => {
if (line.startsWith('data:')) {
const jsonStr = line.substring(5); // 去掉 'data:' 前缀
const parsedData = JSON.parse(jsonStr);
// 解析 content 内容
const content = parsedData.output.choices[0].message.content;
if (content) {
// 检查内容是否已经存在
if (!Subtitles.includes(content)) {
Subtitles += content;
}
};
}
});
};
// 检查请求完成
xhr.onload = function () {
if (xhr.status === 200) {
statusTxt.value = '正在说话';
RequestMicrosoft();
}
};
// 错误处理
xhr.onerror = function () {
console.error('An error occurred during the transaction', xhr.statusText);
};
/* /*
* 关键字转换 * 关键字转换
*/ */
var data = JSON.stringify({ const requestBody = {
"messages": [ model: 'qwen-turbo',
{"role": "system", "content": Question}, input: {
{"role": "user", "content": `请问我${params.msg}正常吗`} messages: [
] {"role": "system", "content": Question},
}); {"role": "user", "content": `请问我${params.msg}正常吗`}
]
xhr.onreadystatechange = function() { },
if (xhr.readyState === 4) { parameters: {
const chunk = xhr.responseText; result_format: 'message',
const str = extractStopEvent(chunk); incremental_output: true
}
statusTxt.value = '正在说话';
/*
* 微软接口识别
*/
fetch("https://eastasia.tts.speech.microsoft.com/cognitiveservices/v1", {
method: 'POST',
headers: {
'Authorization': 'Bearer ' + token,
'Ocp-Apim-Subscription-Key': '58e9b39b8f6f48fe8d01f85b727ff737',
'Content-Type': 'application/ssml+xml',
'X-Microsoft-OutputFormat': 'audio-24khz-48kbitrate-mono-mp3'
},
responseType: 'arraybuffer',
body: `<speak xmlns="http://www.w3.org/2001/10/synthesis" xmlns:mstts="http://www.w3.org/2001/mstts" xmlns:emo="http://www.w3.org/2009/10/emotionml" version="1.0" xml:lang="en-US">
<voice name="zh-CN-XiaoxiaoNeural">
<mstts:express-as style="Default" >
<prosody rate="0%" pitch="0%">
${filterString(str.output.text, ['*', ' '])}
</prosody>
</mstts:express-as>
</voice>
</speak> `,
}).then(async(response) => {
startRec.style.display = "none";
endRec.style.display = "block";
NextPlayVideo(response, filterString(str.output.text, ['*', ' ']));
}).catch(e => {
hideModal();
});
}
}; };
xhr.send(data);
xhr.send(JSON.stringify(requestBody));
isCallbackExecuted = true; isCallbackExecuted = true;
return return;
}) })
} else { } else {
// 如果不存在关键字,就直接走下面
const xhr = new XMLHttpRequest(); const xhr = new XMLHttpRequest();
xhr.open('POST', 'http://sc2.agrimedia.cn:8787/api/user/ask', true); const url = 'https://dashscope.aliyuncs.com/api/v1/services/aigc/text-generation/generation';
var data = JSON.stringify({ const apiKey = 'sk-cbb9b5ff44374fa2a8a258160ebb292d';
"messages": [
{"role": "system", "content": `请模仿全科医生的口吻与我对话`},
{"role": "user", "content": params.msg}
]
})
xhr.onreadystatechange = function() { // 打开请求,设置为异步
if (xhr.readyState === 4) { xhr.open('POST', url, true);
const chunk = xhr.responseText;
const str = extractStopEvent(chunk); // 设置请求头
xhr.setRequestHeader('Content-Type', 'application/json');
statusTxt.value = '正在说话'; xhr.setRequestHeader('Authorization', 'Bearer ' + apiKey);
xhr.setRequestHeader('X-DashScope-SSE', 'enable');
/*
* 微软接口识别 // 处理流式数据的接收(使用 progress 事件)
*/ xhr.onprogress = function () {
fetch("https://eastasia.tts.speech.microsoft.com/cognitiveservices/v1", { const data = xhr.responseText;
method: 'POST',
headers: { // SSE 数据解析处理
'Authorization': 'Bearer ' + token, const lines = data.split('\n');
'Ocp-Apim-Subscription-Key': '58e9b39b8f6f48fe8d01f85b727ff737', lines.forEach(line => {
'Content-Type': 'application/ssml+xml', if (line.startsWith('data:')) {
'X-Microsoft-OutputFormat': 'audio-24khz-48kbitrate-mono-mp3' const jsonStr = line.substring(5); // 去掉 'data:' 前缀
}, const parsedData = JSON.parse(jsonStr);
responseType: 'arraybuffer',
body: `<speak xmlns="http://www.w3.org/2001/10/synthesis" xmlns:mstts="http://www.w3.org/2001/mstts" xmlns:emo="http://www.w3.org/2009/10/emotionml" version="1.0" xml:lang="en-US"> // 解析 content 内容
<voice name="zh-CN-XiaoxiaoNeural"> const content = parsedData.output.choices[0].message.content;
<mstts:express-as style="Default" > if (content) {
<prosody rate="0%" pitch="0%"> // 检查内容是否已经存在
${filterString(str.output.text, ['*', ' '])} if (!Subtitles.includes(content)) {
</prosody> Subtitles += content;
</mstts:express-as> }
</voice> };
</speak> `, }
}).then(async(response) => {
startRec.style.display = "none";
endRec.style.display = "block";
NextPlayVideo(response, filterString(str.output.text, ['*', ' ']));
}).catch(e => {
hideModal();
}); });
}
}; };
xhr.send(data);
// 检查请求完成
xhr.onload = function () {
if (xhr.status === 200) {
statusTxt.value = '正在说话';
RequestMicrosoft();
}
};
// 错误处理
xhr.onerror = function () {
console.error('An error occurred during the transaction', xhr.statusText);
};
// 发送请求
const requestBody = {
model: 'qwen-turbo',
input: {
messages: [
{"role": "system", "content": `请模仿全科医生的口吻与我对话`},
{"role": "user", "content": params.msg}
]
},
parameters: {
result_format: 'message',
incremental_output: true
}
};
xhr.send(JSON.stringify(requestBody));
isCallbackExecuted = true; isCallbackExecuted = true;
return return;
} }
}, 3000); }, 3000);
} }
@ -473,7 +504,7 @@
modal.style.display = 'none'; modal.style.display = 'none';
dialog.style.display = 'none'; dialog.style.display = 'none';
} }
// 查询详情数据 // 查询详情数据
async function DetailDay(type, data) { async function DetailDay(type, data) {
try { try {
@ -489,7 +520,7 @@
"device_id": deviceId, "device_id": deviceId,
"type": type "type": type
}) })
}); });
if (!response.ok) { if (!response.ok) {
throw new Error('Network response was not ok: ' + response.statusText); throw new Error('Network response was not ok: ' + response.statusText);
@ -503,10 +534,8 @@
} }
} }
// 请求微软文字转语音
// 语音输出 function RequestMicrosoft() {
function speed(str) {
console.log(str)
fetch("https://eastasia.tts.speech.microsoft.com/cognitiveservices/v1", { fetch("https://eastasia.tts.speech.microsoft.com/cognitiveservices/v1", {
method: 'POST', method: 'POST',
headers: { headers: {
@ -520,19 +549,22 @@
<voice name="zh-CN-XiaoxiaoNeural"> <voice name="zh-CN-XiaoxiaoNeural">
<mstts:express-as style="Default" > <mstts:express-as style="Default" >
<prosody rate="0%" pitch="0%"> <prosody rate="0%" pitch="0%">
${str} ${filterString(Subtitles, ['*', ' '])}
</prosody> </prosody>
</mstts:express-as> </mstts:express-as>
</voice> </voice>
</speak> `, </speak> `,
}).then(async(response) => { }).then(async(response) => {
NextPlayVideo(response, str); startRec.style.display = "none";
endRec.style.display = "block";
NextPlayVideo(response, filterString(Subtitles, ['*', ' ']));
}).catch(e => { }).catch(e => {
hideModal(); hideModal();
Subtitles = "";
}); });
} }
// 字幕播放视频等操作 // 字幕播放视频等操作
async function NextPlayVideo(response, str) { async function NextPlayVideo(response, str) {
const content_bytes = await response.arrayBuffer(); const content_bytes = await response.arrayBuffer();
@ -564,6 +596,8 @@
replayVideoSegment(0, 60); replayVideoSegment(0, 60);
hideModal() hideModal()
}); });
Subtitles = "";
} }
// 防抖 // 防抖
@ -581,20 +615,6 @@
}; };
} }
// 分钟转小时
function minutesToHoursMinutesStringSimplified(minutes) {
let hours = Math.floor(minutes / 60);
let remainingMinutes = minutes % 60;
let formattedMinutes = remainingMinutes.toString().padStart(2, '0');
if (hours > 0) {
return `${hours}小时${formattedMinutes}分`;
} else {
return `${formattedMinutes}分`;
}
}
// 拿到的数据移除* // 拿到的数据移除*
function filterString(str, charsToRemove) { function filterString(str, charsToRemove) {
// 这里的正则表达式是通过将charsToRemove数组中的字符转换为字符类character class来构建的 // 这里的正则表达式是通过将charsToRemove数组中的字符转换为字符类character class来构建的
@ -643,7 +663,7 @@
targetDate.setDate(day - 1); targetDate.setDate(day - 1);
} else if (query.includes("前天")) { } else if (query.includes("前天")) {
targetDate.setDate(day - 2); targetDate.setDate(day - 2);
} }
const formattedDate = `${targetDate.getFullYear()}-${('0' + targetDate.getMonth()).slice(-2)}-${('0' + targetDate.getDate()).slice(-2)}`; const formattedDate = `${targetDate.getFullYear()}-${('0' + targetDate.getMonth()).slice(-2)}-${('0' + targetDate.getDate()).slice(-2)}`;
@ -651,7 +671,7 @@
function isBloodLiquidMatch(bloodLiquidData, query) { function isBloodLiquidMatch(bloodLiquidData, query) {
return bloodLiquidData.some(element => query.includes(element)) return bloodLiquidData.some(element => query.includes(element))
} }
// 在查询逻辑中使用这个辅助函数 // 在查询逻辑中使用这个辅助函数
for (let key in demoData) { for (let key in demoData) {
if (typeof demoData[key] === 'object' && key === 'bloodLiquid' || typeof demoData[key] === 'object' && key === 'stepIndex' ) { if (typeof demoData[key] === 'object' && key === 'bloodLiquid' || typeof demoData[key] === 'object' && key === 'stepIndex' ) {

File diff suppressed because one or more lines are too long

View File

@ -289,9 +289,6 @@ try {
xSkeleton: xSkeleton:
__webpack_require__(/*! @/uni_modules/x-skeleton/components/x-skeleton/x-skeleton.vue */ 5) __webpack_require__(/*! @/uni_modules/x-skeleton/components/x-skeleton/x-skeleton.vue */ 5)
.default, .default,
mumuMusic:
__webpack_require__(/*! @/uni_modules/mumu-music/components/mumu-music/mumu-music.vue */ 355)
.default,
sleepInfo: __webpack_require__(/*! @/components/sleep-info/sleep-info.vue */ 17).default, sleepInfo: __webpack_require__(/*! @/components/sleep-info/sleep-info.vue */ 17).default,
} }
} catch (e) { } catch (e) {
@ -355,9 +352,8 @@ var render = function () {
"uni-view", "uni-view",
{ staticClass: _vm._$g(11, "sc"), attrs: { _i: 11 } }, { staticClass: _vm._$g(11, "sc"), attrs: { _i: 11 } },
[ [
_c("mumu-music", { attrs: { _i: 12 } }),
_c("homeData", { _c("homeData", {
attrs: { _i: 13 }, attrs: { _i: 12 },
on: { on: {
deviceGet: function ($event) { deviceGet: function ($event) {
return _vm.$handleViewEvent($event) return _vm.$handleViewEvent($event)
@ -371,13 +367,13 @@ var render = function () {
1 1
) )
: _vm._e(), : _vm._e(),
_vm._$g(14, "i") _vm._$g(13, "i")
? _c( ? _c(
"uni-view", "uni-view",
{ staticClass: _vm._$g(14, "sc"), attrs: { _i: 14 } }, { staticClass: _vm._$g(13, "sc"), attrs: { _i: 13 } },
[ [
_c("echartsData", { _c("echartsData", {
attrs: { _i: 15 }, attrs: { _i: 14 },
on: { on: {
back: function ($event) { back: function ($event) {
return _vm.$handleViewEvent($event) return _vm.$handleViewEvent($event)
@ -391,13 +387,13 @@ var render = function () {
1 1
) )
: _vm._e(), : _vm._e(),
_vm._$g(16, "i") _vm._$g(15, "i")
? _c( ? _c(
"uni-view", "uni-view",
{ staticClass: _vm._$g(16, "sc"), attrs: { _i: 16 } }, { staticClass: _vm._$g(15, "sc"), attrs: { _i: 15 } },
[ [
_c("allData", { _c("allData", {
attrs: { _i: 17 }, attrs: { _i: 16 },
on: { on: {
back: function ($event) { back: function ($event) {
return _vm.$handleViewEvent($event) return _vm.$handleViewEvent($event)
@ -408,14 +404,14 @@ var render = function () {
1 1
) )
: _vm._e(), : _vm._e(),
_vm._$g(18, "i") _vm._$g(17, "i")
? _c( ? _c(
"uni-view", "uni-view",
{ staticClass: _vm._$g(18, "sc"), attrs: { _i: 18 } }, { staticClass: _vm._$g(17, "sc"), attrs: { _i: 17 } },
[ [
_c("sleep-info", { _c("sleep-info", {
ref: "sleep", ref: "sleep",
attrs: { _i: 19 }, attrs: { _i: 18 },
on: { on: {
back: function ($event) { back: function ($event) {
return _vm.$handleViewEvent($event) return _vm.$handleViewEvent($event)
@ -428,10 +424,10 @@ var render = function () {
: _vm._e(), : _vm._e(),
_c( _c(
"uni-view", "uni-view",
{ staticClass: _vm._$g(20, "sc"), attrs: { _i: 20 } }, { staticClass: _vm._$g(19, "sc"), attrs: { _i: 19 } },
[ [
_c("v-uni-web-view", { _c("v-uni-web-view", {
attrs: { src: _vm._$g(21, "a-src"), _i: 21 }, attrs: { src: _vm._$g(20, "a-src"), _i: 20 },
}), }),
], ],
1 1
@ -3305,7 +3301,6 @@ exports.default = void 0;
var _homeData = _interopRequireDefault(__webpack_require__(/*! ../../components/home-data/home-data.vue */ 67)); var _homeData = _interopRequireDefault(__webpack_require__(/*! ../../components/home-data/home-data.vue */ 67));
var _echartsData = _interopRequireDefault(__webpack_require__(/*! ../../components/echarts-data/echarts-data.vue */ 125)); var _echartsData = _interopRequireDefault(__webpack_require__(/*! ../../components/echarts-data/echarts-data.vue */ 125));
var _allData = _interopRequireDefault(__webpack_require__(/*! ../../components/all-data/all-data.vue */ 149)); var _allData = _interopRequireDefault(__webpack_require__(/*! ../../components/all-data/all-data.vue */ 149));
var _mumuMusic = _interopRequireDefault(__webpack_require__(/*! @/uni_modules/mumu-music/components/mumu-music/mumu-music.vue */ 355));
var _default = { var _default = {
data: function data() { data: function data() {
return { return {
@ -3315,8 +3310,7 @@ var _default = {
components: { components: {
'homeData': _homeData.default, 'homeData': _homeData.default,
'echartsData': _echartsData.default, 'echartsData': _echartsData.default,
'allData': _allData.default, 'allData': _allData.default
'mumuMusic': _mumuMusic.default
} }
}; };
exports.default = _default; exports.default = _default;
@ -7743,7 +7737,7 @@ Object.defineProperty(exports, "__esModule", {
exports.default = void 0; exports.default = void 0;
var _default = { var _default = {
name: "home-data", name: "home-data",
props: ["deviceList", "dataListsNew"], props: ["deviceList", "dataListsNew", "Activedevice"],
data: function data() { data: function data() {
return { return {
wxsProps: {} wxsProps: {}
@ -18699,224 +18693,5 @@ module.exports = __webpack_require__.p + "static/icon-font/css/iconfont.woff";
module.exports = __webpack_require__.p + "static/icon-font/css/iconfont.ttf"; module.exports = __webpack_require__.p + "static/icon-font/css/iconfont.ttf";
/***/ }),
/* 355 */
/*!**************************************************************************************************!*\
!*** /Users/white/Desktop/watch-app/uni_modules/mumu-music/components/mumu-music/mumu-music.vue ***!
\**************************************************************************************************/
/*! no static exports found */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _mumu_music_vue_vue_type_template_id_d04674f0_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./mumu-music.vue?vue&type=template&id=d04674f0&scoped=true& */ 356);
/* harmony import */ var _mumu_music_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./mumu-music.vue?vue&type=script&lang=js& */ 358);
/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _mumu_music_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__) if(["default"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _mumu_music_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__[key]; }) }(__WEBPACK_IMPORT_KEY__));
/* harmony import */ var _mumu_music_vue_vue_type_style_index_0_id_d04674f0_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./mumu-music.vue?vue&type=style&index=0&id=d04674f0&lang=scss&scoped=true& */ 360);
/* harmony import */ var _Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js */ 16);
var renderjs
/* normalize component */
var component = Object(_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_3__["default"])(
_mumu_music_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__["default"],
_mumu_music_vue_vue_type_template_id_d04674f0_scoped_true___WEBPACK_IMPORTED_MODULE_0__["render"],
_mumu_music_vue_vue_type_template_id_d04674f0_scoped_true___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"],
false,
null,
"d04674f0",
null,
false,
_mumu_music_vue_vue_type_template_id_d04674f0_scoped_true___WEBPACK_IMPORTED_MODULE_0__["components"],
renderjs
)
component.options.__file = "uni_modules/mumu-music/components/mumu-music/mumu-music.vue"
/* harmony default export */ __webpack_exports__["default"] = (component.exports);
/***/ }),
/* 356 */
/*!*********************************************************************************************************************************************!*\
!*** /Users/white/Desktop/watch-app/uni_modules/mumu-music/components/mumu-music/mumu-music.vue?vue&type=template&id=d04674f0&scoped=true& ***!
\*********************************************************************************************************************************************/
/*! exports provided: render, staticRenderFns, recyclableRender, components */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_17_0_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_filter_modules_template_js_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_view_style_js_mumu_music_vue_vue_type_template_id_d04674f0_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--17-0!../../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/filter-modules-template.js!../../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!../../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!../../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/view/style.js!./mumu-music.vue?vue&type=template&id=d04674f0&scoped=true& */ 357);
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "render", function() { return _Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_17_0_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_filter_modules_template_js_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_view_style_js_mumu_music_vue_vue_type_template_id_d04674f0_scoped_true___WEBPACK_IMPORTED_MODULE_0__["render"]; });
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return _Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_17_0_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_filter_modules_template_js_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_view_style_js_mumu_music_vue_vue_type_template_id_d04674f0_scoped_true___WEBPACK_IMPORTED_MODULE_0__["staticRenderFns"]; });
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "recyclableRender", function() { return _Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_17_0_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_filter_modules_template_js_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_view_style_js_mumu_music_vue_vue_type_template_id_d04674f0_scoped_true___WEBPACK_IMPORTED_MODULE_0__["recyclableRender"]; });
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "components", function() { return _Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_17_0_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_filter_modules_template_js_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_page_meta_js_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_view_style_js_mumu_music_vue_vue_type_template_id_d04674f0_scoped_true___WEBPACK_IMPORTED_MODULE_0__["components"]; });
/***/ }),
/* 357 */
/*!*******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--17-0!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/filter-modules-template.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/view/style.js!/Users/white/Desktop/watch-app/uni_modules/mumu-music/components/mumu-music/mumu-music.vue?vue&type=template&id=d04674f0&scoped=true& ***!
\*******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/*! exports provided: render, staticRenderFns, recyclableRender, components */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "render", function() { return render; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "staticRenderFns", function() { return staticRenderFns; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "recyclableRender", function() { return recyclableRender; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "components", function() { return components; });
var components
var render = function () {
var _vm = this
var _h = _vm.$createElement
var _c = _vm._self._c || _h
return _c(
"uni-view",
{ staticClass: _vm._$g(0, "sc"), attrs: { id: "bgMusic", _i: 0 } },
[
_c(
"uni-view",
{
staticClass: _vm._$g(1, "sc"),
class: _vm._$g(1, "c"),
attrs: { _i: 1 },
on: {
click: function ($event) {
return _vm.$handleViewEvent($event)
},
},
},
[
_c("v-uni-image", {
style: _vm._$g(2, "s"),
attrs: { src: _vm._$g(2, "a-src"), mode: "widthFix", _i: 2 },
}),
],
1
),
_vm._$g(3, "i")
? _c("uni-view", {
staticClass: _vm._$g(3, "sc"),
attrs: { _i: 3 },
on: {
touchstart: function ($event) {
return _vm.$handleViewEvent($event, { stop: true })
},
},
})
: _vm._e(),
],
1
)
}
var recyclableRender = false
var staticRenderFns = []
render._withStripped = true
/***/ }),
/* 358 */
/*!***************************************************************************************************************************!*\
!*** /Users/white/Desktop/watch-app/uni_modules/mumu-music/components/mumu-music/mumu-music.vue?vue&type=script&lang=js& ***!
\***************************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_13_1_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_view_script_js_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_using_components_js_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_view_style_js_mumu_music_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib!../../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--13-1!../../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/view/script.js!../../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/using-components.js!../../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!../../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/view/style.js!./mumu-music.vue?vue&type=script&lang=js& */ 359);
/* harmony import */ var _Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_13_1_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_view_script_js_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_using_components_js_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_view_style_js_mumu_music_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_13_1_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_view_script_js_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_using_components_js_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_view_style_js_mumu_music_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__);
/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_13_1_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_view_script_js_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_using_components_js_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_view_style_js_mumu_music_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__) if(["default"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_13_1_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_view_script_js_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_using_components_js_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_view_style_js_mumu_music_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));
/* harmony default export */ __webpack_exports__["default"] = (_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_babel_loader_lib_index_js_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_13_1_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_view_script_js_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_using_components_js_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_view_style_js_mumu_music_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0___default.a);
/***/ }),
/* 359 */
/*!**********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/babel-loader/lib!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--13-1!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/view/script.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/using-components.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/view/style.js!/Users/white/Desktop/watch-app/uni_modules/mumu-music/components/mumu-music/mumu-music.vue?vue&type=script&lang=js& ***!
\**********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _default = {
props: ["sizi", "autoplay", "musicSrc"],
data: function data() {
return {
wxsProps: {}
};
},
components: {}
};
exports.default = _default;
/***/ }),
/* 360 */
/*!************************************************************************************************************************************************************!*\
!*** /Users/white/Desktop/watch-app/uni_modules/mumu-music/components/mumu-music/mumu-music.vue?vue&type=style&index=0&id=d04674f0&lang=scss&scoped=true& ***!
\************************************************************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, __webpack_exports__, __webpack_require__) {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_app_vue_style_loader_index_js_ref_8_oneOf_1_0_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_8_oneOf_1_1_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_8_oneOf_1_2_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_3_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_sass_loader_dist_cjs_js_ref_8_oneOf_1_4_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_8_oneOf_1_5_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_view_style_js_mumu_music_vue_vue_type_style_index_0_id_d04674f0_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/app-vue-style-loader??ref--8-oneOf-1-0!../../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--8-oneOf-1-2!../../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/postcss-loader/src??ref--8-oneOf-1-3!../../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/sass-loader/dist/cjs.js??ref--8-oneOf-1-4!../../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--8-oneOf-1-5!../../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!../../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/view/style.js!./mumu-music.vue?vue&type=style&index=0&id=d04674f0&lang=scss&scoped=true& */ 361);
/* harmony import */ var _Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_app_vue_style_loader_index_js_ref_8_oneOf_1_0_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_8_oneOf_1_1_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_8_oneOf_1_2_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_3_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_sass_loader_dist_cjs_js_ref_8_oneOf_1_4_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_8_oneOf_1_5_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_view_style_js_mumu_music_vue_vue_type_style_index_0_id_d04674f0_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_app_vue_style_loader_index_js_ref_8_oneOf_1_0_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_8_oneOf_1_1_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_8_oneOf_1_2_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_3_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_sass_loader_dist_cjs_js_ref_8_oneOf_1_4_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_8_oneOf_1_5_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_view_style_js_mumu_music_vue_vue_type_style_index_0_id_d04674f0_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__);
/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_app_vue_style_loader_index_js_ref_8_oneOf_1_0_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_8_oneOf_1_1_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_8_oneOf_1_2_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_3_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_sass_loader_dist_cjs_js_ref_8_oneOf_1_4_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_8_oneOf_1_5_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_view_style_js_mumu_music_vue_vue_type_style_index_0_id_d04674f0_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__) if(["default"].indexOf(__WEBPACK_IMPORT_KEY__) < 0) (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_app_vue_style_loader_index_js_ref_8_oneOf_1_0_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_8_oneOf_1_1_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_8_oneOf_1_2_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_3_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_sass_loader_dist_cjs_js_ref_8_oneOf_1_4_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_8_oneOf_1_5_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_view_style_js_mumu_music_vue_vue_type_style_index_0_id_d04674f0_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));
/* harmony default export */ __webpack_exports__["default"] = (_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_app_vue_style_loader_index_js_ref_8_oneOf_1_0_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_css_loader_dist_cjs_js_ref_8_oneOf_1_1_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_loaders_stylePostLoader_js_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_8_oneOf_1_2_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_postcss_loader_src_index_js_ref_8_oneOf_1_3_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_sass_loader_dist_cjs_js_ref_8_oneOf_1_4_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_preprocess_loader_index_js_ref_8_oneOf_1_5_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_vue_loader_lib_index_js_vue_loader_options_Applications_HBuilderX_app_Contents_HBuilderX_plugins_uniapp_cli_node_modules_dcloudio_vue_cli_plugin_uni_packages_webpack_uni_app_loader_view_style_js_mumu_music_vue_vue_type_style_index_0_id_d04674f0_lang_scss_scoped_true___WEBPACK_IMPORTED_MODULE_0___default.a);
/***/ }),
/* 361 */
/*!******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/@dcloudio/vue-cli-plugin-uni/packages/app-vue-style-loader??ref--8-oneOf-1-0!./node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--8-oneOf-1-2!./node_modules/postcss-loader/src??ref--8-oneOf-1-3!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/sass-loader/dist/cjs.js??ref--8-oneOf-1-4!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--8-oneOf-1-5!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/view/style.js!/Users/white/Desktop/watch-app/uni_modules/mumu-music/components/mumu-music/mumu-music.vue?vue&type=style&index=0&id=d04674f0&lang=scss&scoped=true& ***!
\******************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
// style-loader: Adds some css to the DOM by adding a <style> tag
// load the styles
var content = __webpack_require__(/*! !../../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--8-oneOf-1-2!../../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/postcss-loader/src??ref--8-oneOf-1-3!../../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/sass-loader/dist/cjs.js??ref--8-oneOf-1-4!../../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--8-oneOf-1-5!../../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!../../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/view/style.js!./mumu-music.vue?vue&type=style&index=0&id=d04674f0&lang=scss&scoped=true& */ 362);
if(content.__esModule) content = content.default;
if(typeof content === 'string') content = [[module.i, content, '']];
if(content.locals) module.exports = content.locals;
// add the styles to the DOM
var add = __webpack_require__(/*! ../../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/app-vue-style-loader/lib/addStylesClient.js */ 14).default
var update = add("8922966c", content, false, {"sourceMap":false,"shadowMode":false});
// Hot Module Replacement
if(false) {}
/***/ }),
/* 362 */
/*!**********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--8-oneOf-1-2!./node_modules/postcss-loader/src??ref--8-oneOf-1-3!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/sass-loader/dist/cjs.js??ref--8-oneOf-1-4!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader??ref--8-oneOf-1-5!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib??vue-loader-options!./node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/view/style.js!/Users/white/Desktop/watch-app/uni_modules/mumu-music/components/mumu-music/mumu-music.vue?vue&type=style&index=0&id=d04674f0&lang=scss&scoped=true& ***!
\**********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/*! no static exports found */
/***/ (function(module, exports, __webpack_require__) {
// Imports
var ___CSS_LOADER_API_IMPORT___ = __webpack_require__(/*! ../../../../../../../../Applications/HBuilderX.app/Contents/HBuilderX/plugins/uniapp-cli/node_modules/css-loader/dist/runtime/api.js */ 13);
exports = ___CSS_LOADER_API_IMPORT___(false);
// Module
exports.push([module.i, "@charset \"UTF-8\";\n/**\n * 这里是uni-app内置的常用样式变量\n *\n * uni-app 官方扩展插件及插件市场https://ext.dcloud.net.cn上很多三方插件均使用了这些样式变量\n * 如果你是插件开发者建议你使用scss预处理并在插件代码中直接使用这些变量无需 import 这个文件方便用户通过搭积木的方式开发整体风格一致的App\n *\n */\n/**\n * 如果你是App开发者插件使用者你可以通过修改这些变量来定制自己的插件主题实现自定义主题功能\n *\n * 如果你的项目同样使用了scss预处理你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件\n */\n/* 颜色变量 */\n/* 行为相关颜色 */\n/* 文字基本颜色 */\n/* 背景颜色 */\n/* 边框颜色 */\n/* 尺寸变量 */\n/* 文字尺寸 */\n/* 图片尺寸 */\n/* Border Radius */\n/* 水平间距 */\n/* 垂直间距 */\n/* 透明度 */\n/* 文章场景相关 */\n.end[data-v-d04674f0] {\n text-align: center;\n margin-top: 50rpx;\n margin-bottom: 100rpx;\n opacity: .5;\n}\n.icon[data-v-d04674f0] {\n position: fixed;\n top: 50rpx;\n right: 30rpx;\n z-index: 999;\n}\n.ran uni-image[data-v-d04674f0] {\n -webkit-animation: turn-data-v-d04674f0 1s linear infinite;\n animation: turn-data-v-d04674f0 1s linear infinite;\n}\n@-webkit-keyframes turn-data-v-d04674f0 {\n0% {\n -webkit-transform: rotate(0deg);\n}\n25% {\n -webkit-transform: rotate(90deg);\n}\n50% {\n -webkit-transform: rotate(180deg);\n}\n75% {\n -webkit-transform: rotate(270deg);\n}\n100% {\n -webkit-transform: rotate(360deg);\n}\n}\n@keyframes turn-data-v-d04674f0 {\n0% {\n -webkit-transform: rotate(0deg);\n}\n25% {\n -webkit-transform: rotate(90deg);\n}\n50% {\n -webkit-transform: rotate(180deg);\n}\n75% {\n -webkit-transform: rotate(270deg);\n}\n100% {\n -webkit-transform: rotate(360deg);\n}\n}\n.musicPlay[data-v-d04674f0] {\n position: fixed;\n top: 0;\n bottom: 0;\n right: 0;\n left: 0;\n background-color: rgba(0, 0, 0, 0);\n z-index: 9999;\n}\n", ""]);
// Exports
module.exports = exports;
/***/ }) /***/ })
/******/ ]); /******/ ]);

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.1 KiB

View File

@ -79,6 +79,7 @@
<script> <script>
var Items = ['血糖', '睡眠', '血氧', '血压', '尿酸', '梅拖', '心率', '体温', '心电图', '身体成份', '运动', '血脂', '血液成分']; var Items = ['血糖', '睡眠', '血氧', '血压', '尿酸', '梅拖', '心率', '体温', '心电图', '身体成份', '运动', '血脂', '血液成分'];
var Question = ''; var Question = '';
var Subtitles = '';
function getURLParameter(name) { function getURLParameter(name) {
name = name.replace(/[\[]/, "\\[").replace(/[\]]/, "\\]"); name = name.replace(/[\[]/, "\\[").replace(/[\]]/, "\\]");
@ -136,31 +137,6 @@
// 如果没有找到 finish_reason 为 "stop" 的事件,则返回 null 或其他默认值 // 如果没有找到 finish_reason 为 "stop" 的事件,则返回 null 或其他默认值
return stopEvent; return stopEvent;
}
// 筛选关键词
function containsKeywordRegex(text) {
var index = Items.findIndex(item => text.includes(item));
if (index !== -1) {
return index
} else {
return 99999
}
}
// 语音所需时间
function calculateSpeakingTime(text) {
// 假设平均每分钟说230个单词
const wordsPerMinute = 230;
// 计算文字的长度
const wordCount = text.trim().length;
// 计算所需时间(以分钟为单位)
const speakingTime = wordCount / wordsPerMinute;
// 转换为秒数
const speakingTimeInSeconds = speakingTime * 60;
console.log(speakingTimeInSeconds, '说完需要多少秒')
return speakingTimeInSeconds;
} }
</script> </script>
@ -267,8 +243,6 @@
...value ...value
})); }));
speed('你干嘛你干嘛你干嘛你干嘛你干嘛你干嘛你干嘛你干嘛你干嘛你干嘛你干嘛你干嘛你干嘛你干嘛你干嘛你干嘛你干嘛你干嘛你干嘛你干嘛你干嘛你干嘛你干嘛你干嘛你干嘛你干嘛你干嘛你干嘛你干嘛你干嘛');
/* /*
* 实例化迅飞语音听写流式版WebAPI * 实例化迅飞语音听写流式版WebAPI
*/ */
@ -298,13 +272,10 @@
// 判断关键字是否存在 // 判断关键字是否存在
const result = parseHealthQuery(params.msg); const result = parseHealthQuery(params.msg);
isCallbackExecuted = true; isCallbackExecuted = true;
console.log(result, '判断关键字是否存在')
if (result) { if (result) {
DetailDay(result.dataKey, result.date).then(res => { DetailDay(result.dataKey, result.date).then(res => {
console.log(JSON.stringify(res), 'zzzzzzzzzzzzzzzzzzzzzzzzzzzzz')
let TargetData = res.data.data; let TargetData = res.data.data;
var QSindex = containsKeywordRegex(params.msg);
if (result.dataKey == 'ECGData') { if (result.dataKey == 'ECGData') {
TargetData.map(item => { TargetData.map(item => {
@ -324,118 +295,148 @@
Question = `请模仿全科医生的口吻与我: ${user}对话,我最近测量的${result.dataKey}数据为${JSON.stringify(TargetData)}, #提示data_msg为值hour_minute为检测时间。#提示:“[]”表示数据为空,请在小程序上传数据。#限制:回复不要带英文,要都转化成汉语。#限制回复内容控制在150字。#限制:忽略“压力指数、疲劳指数、心肌炎风险、冠心病风险和动脉硬化”等数据。` Question = `请模仿全科医生的口吻与我: ${user}对话,我最近测量的${result.dataKey}数据为${JSON.stringify(TargetData)}, #提示data_msg为值hour_minute为检测时间。#提示:“[]”表示数据为空,请在小程序上传数据。#限制:回复不要带英文,要都转化成汉语。#限制回复内容控制在150字。#限制:忽略“压力指数、疲劳指数、心肌炎风险、冠心病风险和动脉硬化”等数据。`
console.log(Question, '========================='); console.log(Question, '问题=========================问题');
/* /*
* 调用接口 传递关键信息 文字转语音 * 调用接口 传递关键信息 文字转语音
*/ */
const xhr = new XMLHttpRequest(); const xhr = new XMLHttpRequest();
xhr.open('POST', 'http://sc2.agrimedia.cn:8787/api/user/ask', true); const url = 'https://dashscope.aliyuncs.com/api/v1/services/aigc/text-generation/generation';
const apiKey = 'sk-cbb9b5ff44374fa2a8a258160ebb292d';
// 打开请求,设置为异步
xhr.open('POST', url, true);
// 设置请求头
xhr.setRequestHeader('Content-Type', 'application/json');
xhr.setRequestHeader('Authorization', 'Bearer ' + apiKey);
xhr.setRequestHeader('X-DashScope-SSE', 'enable');
// 处理流式数据的接收(使用 progress 事件)
xhr.onprogress = function () {
const data = xhr.responseText;
// SSE 数据解析处理
const lines = data.split('\n');
lines.forEach(line => {
if (line.startsWith('data:')) {
const jsonStr = line.substring(5); // 去掉 'data:' 前缀
const parsedData = JSON.parse(jsonStr);
// 解析 content 内容
const content = parsedData.output.choices[0].message.content;
if (content) {
// 检查内容是否已经存在
if (!Subtitles.includes(content)) {
Subtitles += content;
}
};
}
});
};
// 检查请求完成
xhr.onload = function () {
if (xhr.status === 200) {
statusTxt.value = '正在说话';
RequestMicrosoft();
}
};
// 错误处理
xhr.onerror = function () {
console.error('An error occurred during the transaction', xhr.statusText);
};
/* /*
* 关键字转换 * 关键字转换
*/ */
var data = JSON.stringify({ const requestBody = {
"messages": [ model: 'qwen-turbo',
{"role": "system", "content": Question}, input: {
{"role": "user", "content": `请问我${params.msg}正常吗`} messages: [
] {"role": "system", "content": Question},
}); {"role": "user", "content": `请问我${params.msg}正常吗`}
]
xhr.onreadystatechange = function() { },
if (xhr.readyState === 4) { parameters: {
const chunk = xhr.responseText; result_format: 'message',
const str = extractStopEvent(chunk); incremental_output: true
}
statusTxt.value = '正在说话';
/*
* 微软接口识别
*/
fetch("https://eastasia.tts.speech.microsoft.com/cognitiveservices/v1", {
method: 'POST',
headers: {
'Authorization': 'Bearer ' + token,
'Ocp-Apim-Subscription-Key': '58e9b39b8f6f48fe8d01f85b727ff737',
'Content-Type': 'application/ssml+xml',
'X-Microsoft-OutputFormat': 'audio-24khz-48kbitrate-mono-mp3'
},
responseType: 'arraybuffer',
body: `<speak xmlns="http://www.w3.org/2001/10/synthesis" xmlns:mstts="http://www.w3.org/2001/mstts" xmlns:emo="http://www.w3.org/2009/10/emotionml" version="1.0" xml:lang="en-US">
<voice name="zh-CN-XiaoxiaoNeural">
<mstts:express-as style="Default" >
<prosody rate="0%" pitch="0%">
${filterString(str.output.text, ['*', ' '])}
</prosody>
</mstts:express-as>
</voice>
</speak> `,
}).then(async(response) => {
startRec.style.display = "none";
endRec.style.display = "block";
NextPlayVideo(response, filterString(str.output.text, ['*', ' ']));
}).catch(e => {
hideModal();
});
}
}; };
xhr.send(data);
xhr.send(JSON.stringify(requestBody));
isCallbackExecuted = true; isCallbackExecuted = true;
return return;
}) })
} else { } else {
// 如果不存在关键字,就直接走下面
const xhr = new XMLHttpRequest(); const xhr = new XMLHttpRequest();
xhr.open('POST', 'http://sc2.agrimedia.cn:8787/api/user/ask', true); const url = 'https://dashscope.aliyuncs.com/api/v1/services/aigc/text-generation/generation';
var data = JSON.stringify({ const apiKey = 'sk-cbb9b5ff44374fa2a8a258160ebb292d';
"messages": [
{"role": "system", "content": `请模仿全科医生的口吻与我对话`},
{"role": "user", "content": params.msg}
]
})
xhr.onreadystatechange = function() { // 打开请求,设置为异步
if (xhr.readyState === 4) { xhr.open('POST', url, true);
const chunk = xhr.responseText;
const str = extractStopEvent(chunk); // 设置请求头
xhr.setRequestHeader('Content-Type', 'application/json');
statusTxt.value = '正在说话'; xhr.setRequestHeader('Authorization', 'Bearer ' + apiKey);
xhr.setRequestHeader('X-DashScope-SSE', 'enable');
/*
* 微软接口识别 // 处理流式数据的接收(使用 progress 事件)
*/ xhr.onprogress = function () {
fetch("https://eastasia.tts.speech.microsoft.com/cognitiveservices/v1", { const data = xhr.responseText;
method: 'POST',
headers: { // SSE 数据解析处理
'Authorization': 'Bearer ' + token, const lines = data.split('\n');
'Ocp-Apim-Subscription-Key': '58e9b39b8f6f48fe8d01f85b727ff737', lines.forEach(line => {
'Content-Type': 'application/ssml+xml', if (line.startsWith('data:')) {
'X-Microsoft-OutputFormat': 'audio-24khz-48kbitrate-mono-mp3' const jsonStr = line.substring(5); // 去掉 'data:' 前缀
}, const parsedData = JSON.parse(jsonStr);
responseType: 'arraybuffer',
body: `<speak xmlns="http://www.w3.org/2001/10/synthesis" xmlns:mstts="http://www.w3.org/2001/mstts" xmlns:emo="http://www.w3.org/2009/10/emotionml" version="1.0" xml:lang="en-US"> // 解析 content 内容
<voice name="zh-CN-XiaoxiaoNeural"> const content = parsedData.output.choices[0].message.content;
<mstts:express-as style="Default" > if (content) {
<prosody rate="0%" pitch="0%"> // 检查内容是否已经存在
${filterString(str.output.text, ['*', ' '])} if (!Subtitles.includes(content)) {
</prosody> Subtitles += content;
</mstts:express-as> }
</voice> };
</speak> `, }
}).then(async(response) => {
startRec.style.display = "none";
endRec.style.display = "block";
NextPlayVideo(response, filterString(str.output.text, ['*', ' ']));
}).catch(e => {
hideModal();
}); });
}
}; };
xhr.send(data);
// 检查请求完成
xhr.onload = function () {
if (xhr.status === 200) {
statusTxt.value = '正在说话';
RequestMicrosoft();
}
};
// 错误处理
xhr.onerror = function () {
console.error('An error occurred during the transaction', xhr.statusText);
};
// 发送请求
const requestBody = {
model: 'qwen-turbo',
input: {
messages: [
{"role": "system", "content": `请模仿全科医生的口吻与我对话`},
{"role": "user", "content": params.msg}
]
},
parameters: {
result_format: 'message',
incremental_output: true
}
};
xhr.send(JSON.stringify(requestBody));
isCallbackExecuted = true; isCallbackExecuted = true;
return return;
} }
}, 3000); }, 3000);
} }
@ -503,7 +504,7 @@
modal.style.display = 'none'; modal.style.display = 'none';
dialog.style.display = 'none'; dialog.style.display = 'none';
} }
// 查询详情数据 // 查询详情数据
async function DetailDay(type, data) { async function DetailDay(type, data) {
try { try {
@ -519,7 +520,7 @@
"device_id": deviceId, "device_id": deviceId,
"type": type "type": type
}) })
}); });
if (!response.ok) { if (!response.ok) {
throw new Error('Network response was not ok: ' + response.statusText); throw new Error('Network response was not ok: ' + response.statusText);
@ -533,10 +534,8 @@
} }
} }
// 请求微软文字转语音
// 语音输出 function RequestMicrosoft() {
function speed(str) {
console.log(str)
fetch("https://eastasia.tts.speech.microsoft.com/cognitiveservices/v1", { fetch("https://eastasia.tts.speech.microsoft.com/cognitiveservices/v1", {
method: 'POST', method: 'POST',
headers: { headers: {
@ -550,19 +549,22 @@
<voice name="zh-CN-XiaoxiaoNeural"> <voice name="zh-CN-XiaoxiaoNeural">
<mstts:express-as style="Default" > <mstts:express-as style="Default" >
<prosody rate="0%" pitch="0%"> <prosody rate="0%" pitch="0%">
${str} ${filterString(Subtitles, ['*', ' '])}
</prosody> </prosody>
</mstts:express-as> </mstts:express-as>
</voice> </voice>
</speak> `, </speak> `,
}).then(async(response) => { }).then(async(response) => {
NextPlayVideo(response, str); startRec.style.display = "none";
endRec.style.display = "block";
NextPlayVideo(response, filterString(Subtitles, ['*', ' ']));
}).catch(e => { }).catch(e => {
hideModal(); hideModal();
Subtitles = "";
}); });
} }
// 字幕播放视频等操作 // 字幕播放视频等操作
async function NextPlayVideo(response, str) { async function NextPlayVideo(response, str) {
const content_bytes = await response.arrayBuffer(); const content_bytes = await response.arrayBuffer();
@ -594,6 +596,8 @@
replayVideoSegment(0, 60); replayVideoSegment(0, 60);
hideModal() hideModal()
}); });
Subtitles = "";
} }
// 防抖 // 防抖
@ -611,20 +615,6 @@
}; };
} }
// 分钟转小时
function minutesToHoursMinutesStringSimplified(minutes) {
let hours = Math.floor(minutes / 60);
let remainingMinutes = minutes % 60;
let formattedMinutes = remainingMinutes.toString().padStart(2, '0');
if (hours > 0) {
return `${hours}小时${formattedMinutes}分`;
} else {
return `${formattedMinutes}分`;
}
}
// 拿到的数据移除* // 拿到的数据移除*
function filterString(str, charsToRemove) { function filterString(str, charsToRemove) {
// 这里的正则表达式是通过将charsToRemove数组中的字符转换为字符类character class来构建的 // 这里的正则表达式是通过将charsToRemove数组中的字符转换为字符类character class来构建的
@ -673,7 +663,7 @@
targetDate.setDate(day - 1); targetDate.setDate(day - 1);
} else if (query.includes("前天")) { } else if (query.includes("前天")) {
targetDate.setDate(day - 2); targetDate.setDate(day - 2);
} }
const formattedDate = `${targetDate.getFullYear()}-${('0' + targetDate.getMonth()).slice(-2)}-${('0' + targetDate.getDate()).slice(-2)}`; const formattedDate = `${targetDate.getFullYear()}-${('0' + targetDate.getMonth()).slice(-2)}-${('0' + targetDate.getDate()).slice(-2)}`;
@ -681,7 +671,7 @@
function isBloodLiquidMatch(bloodLiquidData, query) { function isBloodLiquidMatch(bloodLiquidData, query) {
return bloodLiquidData.some(element => query.includes(element)) return bloodLiquidData.some(element => query.includes(element))
} }
// 在查询逻辑中使用这个辅助函数 // 在查询逻辑中使用这个辅助函数
for (let key in demoData) { for (let key in demoData) {
if (typeof demoData[key] === 'object' && key === 'bloodLiquid' || typeof demoData[key] === 'object' && key === 'stepIndex' ) { if (typeof demoData[key] === 'object' && key === 'bloodLiquid' || typeof demoData[key] === 'object' && key === 'stepIndex' ) {