dev #930
@ -689,7 +689,18 @@ export default function CircuitTrestleSetting({ id }) {
|
||||
.map((obj) => {
|
||||
obj.pcses = getStepUpListData()
|
||||
})
|
||||
await capture(1)
|
||||
// 캡처 실패 시 에러 팝업 후 중단 (다시 회로구성 가능)
|
||||
try {
|
||||
await capture(1)
|
||||
} catch (e) {
|
||||
console.log('🚀 ~ capture(1) error:', e)
|
||||
setIsGlobalLoading(false)
|
||||
swalFire({
|
||||
text: getMessage('common.message.send.error'),
|
||||
icon: 'error',
|
||||
})
|
||||
return
|
||||
}
|
||||
|
||||
//회로할당 저장 시 result=null인 경우에도 회로번호 텍스트 표시 유지 처리
|
||||
|
||||
|
||||
@ -106,6 +106,18 @@ export function useImgLoader() {
|
||||
|
||||
canvas.renderAll()
|
||||
|
||||
// 렌더링 완료 대기 (최대 3초, 초과 시 에러)
|
||||
const renderReady = await new Promise((resolve) => {
|
||||
const timeout = setTimeout(() => resolve(false), 3000)
|
||||
requestAnimationFrame(() => {
|
||||
clearTimeout(timeout)
|
||||
resolve(true)
|
||||
})
|
||||
})
|
||||
if (!renderReady) {
|
||||
throw new Error('RENDER_TIMEOUT')
|
||||
}
|
||||
|
||||
const formData = new FormData()
|
||||
|
||||
// 3. 도면 오브젝트의 바운딩 박스 계산
|
||||
@ -164,8 +176,9 @@ export function useImgLoader() {
|
||||
} catch (e) {
|
||||
canvas.backgroundColor = originalBg
|
||||
canvas.renderAll()
|
||||
setIsGlobalLoading(false)
|
||||
toggleLineEtc(true)
|
||||
console.log('🚀 ~ handleCanvasToPng ~ e:', e)
|
||||
throw e
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user