const params = {
id: $route.query.proId
};
// downloadWord(params: any) {
// return request.get<any>(`/RewriteProController/downloadWord?id=${params.id}`);
// }
// response返回流式文件
const response = await writeApi.aiInfo.downloadWord(params);
if (response) {
// 创建 Blob 对象
const blob = new Blob([response], {
type: 'application/vnd.openxmlformats-officedocument.wordprocessingml.document'
});
// 创建一个 URL 对象
const url = URL.createObjectURL(blob);
// 创建一个链接元素
const a = document.createElement('a');
a.href = url;
a.download = encodeURIComponent(`${manuscriptTitle.value}.docx`); // 下载时的文件名
// 模拟点击下载
a.click();
// 释放 URL 对象
URL.revokeObjectURL(url);
} else {
console.error('未正确获取到 Word 文件数据');
}
上面的方式下载,word 打不开,不知道什么原因,有大神知道的可以留言
const exportWord = async () => {
if (!manuscriptTitle.value) {
ElMessage.warning('请先输入标题');
return false;
}
const flag = aiInfoConData.value.some(item => {
return item.resultContent;
});
if (!flag) {
ElMessage.warning('请先输入内容');
return false;
}
await saveData();
const params = {
id: $route.query.proId
};
//更换环境
if (window.origin.includes('hj.fsfund.com')) {
baseUrl.value = `${window.origin}/fund-grab`;
} else {
baseUrl.value = 'http://172.30.113.199:8702';
}
const downloadUrl = `${baseUrl.value}/RewriteProController/downloadWord?id=${params.id}&filename=${encodeURIComponent(
'example.docx'
)}`;
// window.open(downloadUrl, '_blank');
const link = document.createElement('a');
link.href = downloadUrl;
// link.download = name; // 可以指定下载后的文件名
document.body.appendChild(link);
link.click();
document.body.removeChild(link);
};