提示信息修复

This commit is contained in:
tianmo
2026-09-05 22:53:22 +08:00
parent 5df21165a5
commit c31bcb4c49
7 changed files with 1273 additions and 1247 deletions
File diff suppressed because one or more lines are too long
+1239
View File
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
-1239
View File
File diff suppressed because one or more lines are too long
+2 -2
View File
@@ -8,8 +8,8 @@
html, body { margin: 0; padding: 0; background: #111; color: #eee; font-family: system-ui, -apple-system, sans-serif; } html, body { margin: 0; padding: 0; background: #111; color: #eee; font-family: system-ui, -apple-system, sans-serif; }
#app { display: flex; flex-direction: column; height: 100vh; } #app { display: flex; flex-direction: column; height: 100vh; }
</style> </style>
<script type="module" crossorigin src="/assets/index-yJqyT1FD.js"></script> <script type="module" crossorigin src="/assets/index-CQJ6qUg9.js"></script>
<link rel="stylesheet" crossorigin href="/assets/index-RonkRpMh.css"> <link rel="stylesheet" crossorigin href="/assets/index-CheycJh3.css">
</head> </head>
<body> <body>
<div id="app"></div> <div id="app"></div>
+29 -3
View File
@@ -1031,6 +1031,7 @@ const exportMessage = ref('')
const exportError = ref(false) const exportError = ref(false)
const connectorHealth = ref<SpineConnectorHealth | null>(null) const connectorHealth = ref<SpineConnectorHealth | null>(null)
const connectorPairUrl = ref('') const connectorPairUrl = ref('')
const connectorExportErrorCode = ref('')
const connectorStatusText = computed(() => { const connectorStatusText = computed(() => {
const health = connectorHealth.value const health = connectorHealth.value
@@ -1144,12 +1145,32 @@ onMounted(() => {
}) })
let connectorHealthTimer: number | undefined let connectorHealthTimer: number | undefined
let connectorHealthRequestId = 0
onBeforeUnmount(() => { onBeforeUnmount(() => {
if (connectorHealthTimer !== undefined) window.clearInterval(connectorHealthTimer) if (connectorHealthTimer !== undefined) window.clearInterval(connectorHealthTimer)
}) })
async function refreshConnectorHealth() { async function refreshConnectorHealth() {
connectorHealth.value = await checkSpineConnector() const requestId = ++connectorHealthRequestId
const health = await checkSpineConnector()
if (requestId !== connectorHealthRequestId) return
connectorHealth.value = health
const code = connectorExportErrorCode.value
const resolved = code === 'CONNECTOR_OFFLINE'
? health.available
: code === 'SPINE_NOT_FOUND'
? health.available && health.spineFound
: code === 'ORIGIN_NOT_ALLOWED'
? health.available && health.spineFound && health.authorized
: !!code && health.available && health.spineFound && health.authorized
if (resolved) {
connectorExportErrorCode.value = ''
connectorPairUrl.value = ''
if (exportError.value) {
exportError.value = false
exportMessage.value = ''
}
}
} }
function nextPaint() { function nextPaint() {
@@ -1179,6 +1200,7 @@ async function exportSpineJson() {
exportBusy.value = true exportBusy.value = true
exportTarget.value = 'json' exportTarget.value = 'json'
exportError.value = false exportError.value = false
connectorExportErrorCode.value = ''
connectorPairUrl.value = '' connectorPairUrl.value = ''
exportMessage.value = '正在重新计算粒子动画…' exportMessage.value = '正在重新计算粒子动画…'
try { try {
@@ -1202,6 +1224,7 @@ async function exportSpineProject() {
exportBusy.value = true exportBusy.value = true
exportTarget.value = 'spine' exportTarget.value = 'spine'
exportError.value = false exportError.value = false
connectorExportErrorCode.value = ''
connectorPairUrl.value = '' connectorPairUrl.value = ''
exportMessage.value = '正在重新计算粒子动画…' exportMessage.value = '正在重新计算粒子动画…'
const transfer = beginTransfer('导出 Spine 包', '正在重新计算粒子动画…') const transfer = beginTransfer('导出 Spine 包', '正在重新计算粒子动画…')
@@ -1230,11 +1253,13 @@ async function exportSpineProject() {
await refreshConnectorHealth() await refreshConnectorHealth()
await transfer.finish('Spine 工程包已开始下载') await transfer.finish('Spine 工程包已开始下载')
} catch (error) { } catch (error) {
const errorMessage = error instanceof Error ? error.message : String(error)
exportError.value = true exportError.value = true
connectorExportErrorCode.value = error instanceof SpineConnectorError ? error.code : ''
if (error instanceof SpineConnectorError && error.pairUrl) connectorPairUrl.value = error.pairUrl if (error instanceof SpineConnectorError && error.pairUrl) connectorPairUrl.value = error.pairUrl
exportMessage.value = error instanceof Error ? error.message : String(error) exportMessage.value = errorMessage
await refreshConnectorHealth() await refreshConnectorHealth()
await transfer.fail(exportMessage.value) await transfer.fail(errorMessage)
} finally { } finally {
exportBusy.value = false exportBusy.value = false
exportTarget.value = null exportTarget.value = null
@@ -1246,6 +1271,7 @@ async function exportSpineImages() {
exportBusy.value = true exportBusy.value = true
exportTarget.value = 'images' exportTarget.value = 'images'
exportError.value = false exportError.value = false
connectorExportErrorCode.value = ''
connectorPairUrl.value = '' connectorPairUrl.value = ''
exportMessage.value = '正在整理当前粒子系统使用的图片…' exportMessage.value = '正在整理当前粒子系统使用的图片…'
try { try {