|
|
|
|
@ -32,10 +32,41 @@ export async function print(printJs, isLog, form, logContent) {
|
|
|
|
|
const matchName = fieldMath.match(/name="([^"]+)"/);
|
|
|
|
|
if (matchName) {
|
|
|
|
|
const nameValue = matchName[1];
|
|
|
|
|
console.log("nameValue",nameValue)
|
|
|
|
|
if (Array.from(staticMap.keys()).indexOf(nameValue) !== -1) {
|
|
|
|
|
printStr = printStr.replace(fieldMath, staticMap.get(nameValue))
|
|
|
|
|
} else {
|
|
|
|
|
let value = store.getters.device === 'desktop' ? (document.querySelector(`[for="${nameValue}"]+div`) ? document.querySelector(`[for="${nameValue}"]+div`).innerHTML : '') : (document.querySelector(`[for="${nameValue}"] > div:nth-child(2)`) ? document.querySelector(`[for="${nameValue}"] > div:nth-child(2)`).innerHTML : '')
|
|
|
|
|
// let value = store.getters.device === 'desktop' ?
|
|
|
|
|
// (document.querySelector(`[for="${nameValue}"]+div`) ?
|
|
|
|
|
// document.querySelector(`[for="${nameValue}"]+div`).innerHTML
|
|
|
|
|
// : (document.querySelector(`[for="${nameValue}"] > div:nth-child(2)`) ?
|
|
|
|
|
// document.querySelector(`[for="${nameValue}"] > div:nth-child(2)`).innerHTML
|
|
|
|
|
// : (document.querySelector(`[data-field-name="${nameValue}"] > div span`) ?
|
|
|
|
|
// document.querySelector(`[data-field-name="${nameValue}"] > div span`).innerHTML:'')
|
|
|
|
|
// if(){
|
|
|
|
|
|
|
|
|
|
// }
|
|
|
|
|
let value;
|
|
|
|
|
const desktopMode = store.getters.device === 'desktop';
|
|
|
|
|
|
|
|
|
|
if (desktopMode) {
|
|
|
|
|
// 桌面模式下的查找逻辑
|
|
|
|
|
const element1 = document.querySelector(`[for="${nameValue}"]+div`);
|
|
|
|
|
if (element1) {
|
|
|
|
|
value = element1.innerHTML;
|
|
|
|
|
} else {
|
|
|
|
|
const element2 = document.querySelector(`[for="${nameValue}"] > div:nth-child(2)`);
|
|
|
|
|
if (element2) {
|
|
|
|
|
value = element2.innerHTML;
|
|
|
|
|
} else {
|
|
|
|
|
const element3 = document.querySelector(`[data-field-name="${nameValue}"] > div span`);
|
|
|
|
|
value = element3 ? element3.innerHTML : '';
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
// 非桌面模式下的逻辑(原代码未给出,需要补充)
|
|
|
|
|
value = '';
|
|
|
|
|
}
|
|
|
|
|
if (/<table/g.test(value)) {
|
|
|
|
|
let subForm = await this.$refs['desktopForm'].$refs[`subForm-${nameValue}`].exportData({
|
|
|
|
|
type: 'html',
|
|
|
|
|
@ -45,7 +76,7 @@ export async function print(printJs, isLog, form, logContent) {
|
|
|
|
|
let subFormStyle = subForm.content.match(/<style>(.*?)<\/style>/g)[0]
|
|
|
|
|
printStr = printStr.replace('</style>',`</style>${subFormStyle}`)
|
|
|
|
|
printStr = printStr.replace(fieldMath,subFormBody)
|
|
|
|
|
console.log(fieldMath, printStr)
|
|
|
|
|
// console.log(fieldMath, printStr)
|
|
|
|
|
} else {
|
|
|
|
|
printStr = printStr.replace(fieldMath,`<span>${value}</span>`)
|
|
|
|
|
}
|
|
|
|
|
|