|
|
@@ -66,6 +66,8 @@ const resultData = ref("");
|
|
|
const disabled = ref(false);
|
|
|
const chatBox = ref(null);
|
|
|
const lastChat = ref("");
|
|
|
+const hasdata = ref(false);
|
|
|
+const hasn = ref(false);
|
|
|
const msg = ref([
|
|
|
{
|
|
|
role: "system",
|
|
|
@@ -117,18 +119,35 @@ const enterChat = () => {
|
|
|
// console.log("Stream finished");
|
|
|
return;
|
|
|
}
|
|
|
+ hasdata.value = false
|
|
|
+ hasn.value = false
|
|
|
const message = decoder.decode(value);
|
|
|
// console.log("原:", message);
|
|
|
+ const baseMsg = JSON.stringify(message)
|
|
|
+ // console.log('value',JSON.stringify(message))
|
|
|
+ var reg = RegExp(/\\n/)
|
|
|
+ // console.log('1',reg.test(baseMsg));
|
|
|
+ if(baseMsg.indexOf('data:') != -1){
|
|
|
+ hasdata.value = true
|
|
|
+ }
|
|
|
+ if(reg.test(baseMsg)){
|
|
|
+ hasn.value = true
|
|
|
+ }
|
|
|
let newMsg = message
|
|
|
.replace(/data:/gi, "")
|
|
|
.replace(/\n/gi, "")
|
|
|
- if(newMsg == "" && lastChat.value == ""){
|
|
|
+ .replace(/</gi, "<")
|
|
|
+ .replace(/>/gi, ">")
|
|
|
+ .replace(/\s/gi, " ")
|
|
|
+ // console.log('hasdata',hasdata.value,hasn.value);
|
|
|
+ // if(newMsg == "" && lastChat.value == ""){
|
|
|
+ if(newMsg == "" && hasn.value && hasdata.value){
|
|
|
newMsg = "</br>"
|
|
|
}else{
|
|
|
lastChat.value = newMsg
|
|
|
}
|
|
|
// .replace("\n", "")
|
|
|
- // console.log("改:", newMsg);
|
|
|
+ // console.log("改:*", newMsg+"*");
|
|
|
let v = resultData.value+ newMsg;
|
|
|
resultData.value = v;
|
|
|
msg.value[msg.value.length - 1].content = resultData.value;
|
|
|
@@ -185,7 +204,7 @@ onMounted(() => {
|
|
|
background-color: #eaf1f9;
|
|
|
}
|
|
|
.main {
|
|
|
- width: 565px;
|
|
|
+ width: 900px;
|
|
|
height: 100%;
|
|
|
padding: 24px 0 16px 0;
|
|
|
margin: 0 auto;
|