refactor(@vben/common-ui): 优化文档生成和下载逻辑
This commit is contained in:
parent
80831aa367
commit
4518ef74eb
@ -134,47 +134,53 @@ const startFetching = async () => {
|
|||||||
|
|
||||||
if (answer && isDocxURL(answer)) {
|
if (answer && isDocxURL(answer)) {
|
||||||
filename.value = extractDocxFilename(answer);
|
filename.value = extractDocxFilename(answer);
|
||||||
|
resultItems.value.push({
|
||||||
|
key: resultItems.value.length + 1,
|
||||||
|
role: 'ai',
|
||||||
|
content: '文档已生成',
|
||||||
|
footer: h(Flex, null, [
|
||||||
|
h(
|
||||||
|
Button,
|
||||||
|
{
|
||||||
|
size: 'nomarl',
|
||||||
|
type: 'primary',
|
||||||
|
onClick: () => {
|
||||||
|
openPreviewDrawer('right', filename);
|
||||||
|
},
|
||||||
|
},
|
||||||
|
'文档预览',
|
||||||
|
),
|
||||||
|
h(
|
||||||
|
Button,
|
||||||
|
{
|
||||||
|
size: 'nomarl',
|
||||||
|
type: 'primary',
|
||||||
|
style: {
|
||||||
|
marginLeft: '10px',
|
||||||
|
},
|
||||||
|
onClick: () => {
|
||||||
|
// 创建隐藏的 <a> 标签用于触发下载
|
||||||
|
const link = document.createElement('a');
|
||||||
|
link.href = answer; // 设置下载链接
|
||||||
|
link.download = filename; // 设置下载文件名
|
||||||
|
document.body.append(link); // 将 <a> 标签添加到页面中
|
||||||
|
link.click(); // 触发点击事件开始下载
|
||||||
|
link.remove(); // 下载完成后移除 <a> 标签
|
||||||
|
},
|
||||||
|
},
|
||||||
|
'文档下载',
|
||||||
|
),
|
||||||
|
]),
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
resultItems.value.push({
|
||||||
|
key: resultItems.value.length + 1,
|
||||||
|
role: 'ai',
|
||||||
|
content: res.answer,
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
fetchResult.value = `/static/${filename.value}`;
|
fetchResult.value = `/static/${filename.value}`;
|
||||||
resultItems.value.push({
|
|
||||||
key: resultItems.value.length + 1,
|
|
||||||
role: 'ai',
|
|
||||||
content: res.answer,
|
|
||||||
footer: h(Flex, null, [
|
|
||||||
h(
|
|
||||||
Button,
|
|
||||||
{
|
|
||||||
size: 'nomarl',
|
|
||||||
type: 'primary',
|
|
||||||
onClick: () => {
|
|
||||||
openPreviewDrawer('right', filename);
|
|
||||||
},
|
|
||||||
},
|
|
||||||
'文档预览',
|
|
||||||
),
|
|
||||||
h(
|
|
||||||
Button,
|
|
||||||
{
|
|
||||||
size: 'nomarl',
|
|
||||||
type: 'primary',
|
|
||||||
style: {
|
|
||||||
marginLeft: '10px',
|
|
||||||
},
|
|
||||||
onClick: () => {
|
|
||||||
// 创建隐藏的 <a> 标签用于触发下载
|
|
||||||
const link = document.createElement('a');
|
|
||||||
link.href = answer; // 设置下载链接
|
|
||||||
link.download = filename; // 设置下载文件名
|
|
||||||
document.body.append(link); // 将 <a> 标签添加到页面中
|
|
||||||
link.click(); // 触发点击事件开始下载
|
|
||||||
link.remove(); // 下载完成后移除 <a> 标签
|
|
||||||
},
|
|
||||||
},
|
|
||||||
'文档下载',
|
|
||||||
),
|
|
||||||
]),
|
|
||||||
});
|
|
||||||
// resultItems.value.push({
|
// resultItems.value.push({
|
||||||
// key: resultItems.value.length + 1,
|
// key: resultItems.value.length + 1,
|
||||||
// role: 'ai',
|
// role: 'ai',
|
||||||
|
Loading…
Reference in New Issue
Block a user