diff --git a/src/utils/formBuilder.js b/src/utils/formBuilder.js index a3f02cb..0189512 100644 --- a/src/utils/formBuilder.js +++ b/src/utils/formBuilder.js @@ -851,7 +851,6 @@ export default function formBuilder( ? target[info.name] : Number(target[info.name]); } - console.log("res2",res) if (res instanceof Array) { if (typeof options[0] === "object") { return options @@ -1105,7 +1104,8 @@ export default function formBuilder( "el-form-item", { attrs: { - 'data-field-id': info.id + 'data-field-id': info.id, + 'data-field-name':info.name }, props: { prop: info.name, @@ -1920,7 +1920,7 @@ export default function formBuilder( formItem = h("van-field", { props: { value: target[info.name], - readonly: true + readonly: true, }, }) } diff --git a/src/utils/print.js b/src/utils/print.js index 12e1910..871440a 100644 --- a/src/utils/print.js +++ b/src/utils/print.js @@ -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 (/