wangzhibo
10 天以前 220e4fab27b7f419b3e89e2f2d28ae789aac09d7
xiaozhi-esp32-server/main/manager-mobile/src/pages/agent/edit.vue
@@ -25,6 +25,10 @@
const agentId = computed(() => props.agentId)
function isUsableAgentId(id?: string) {
  return Boolean(id && id !== 'default')
}
// 表单数据
const formData = ref<Partial<AgentDetail>>({
  agentName: '',
@@ -326,7 +330,7 @@
// 加载智能体详情
async function loadAgentDetail(targetAgentId = agentId.value) {
  if (!targetAgentId)
  if (!isUsableAgentId(targetAgentId))
    return false
  const requestId = ++agentDetailRequestSequence
@@ -1100,7 +1104,7 @@
// 获取智能体标签
async function loadAgentTags(targetAgentId = agentId.value) {
  if (!targetAgentId) {
  if (!isUsableAgentId(targetAgentId)) {
    return false
  }
  const requestId = ++agentTagRequestSequence
@@ -1233,16 +1237,18 @@
  invalidateTtsMetadataRequest()
  loading.value = false
  snapshotReloadFailed.value = false
  snapshotReloadBlocked.value = Boolean(currentAgentId)
  snapshotReloadBlocked.value = isUsableAgentId(currentAgentId)
  originalAgentDetail.value = null
  originalTagNames.value = []
  if (currentAgentId) {
  if (isUsableAgentId(currentAgentId)) {
    void reloadAgentAfterSnapshotRestore(currentAgentId)
  }
}, { flush: 'sync' })
onMounted(async () => {
  loadAgentTags()
  if (isUsableAgentId(agentId.value)) {
    loadAgentTags()
  }
  // 先加载模型选项和角色模板
  await Promise.all([
@@ -1252,7 +1258,7 @@
  ])
  // 然后加载智能体详情,这样可以正确映射显示名称
  if (agentId.value && !snapshotReloadBlocked.value) {
  if (isUsableAgentId(agentId.value) && !snapshotReloadBlocked.value) {
    await loadAgentDetail()
  }
})