32 lines
780 B
Vue
32 lines
780 B
Vue
<script setup lang="ts">
|
|
import { Page } from '@vben/common-ui'
|
|
import { DocAlert } from '#/components/doc-alert'
|
|
import { IFrame } from '#/components/iframe'
|
|
|
|
import { ref, onMounted } from 'vue'
|
|
import { getConfigKey } from '#/api/infra/config'
|
|
|
|
const loading = ref(true) // 是否加载中
|
|
const src = ref('http://skywalking.shop.iocoder.cn')
|
|
|
|
/** 初始化 */
|
|
onMounted(async () => {
|
|
try {
|
|
const data = await getConfigKey('url.skywalking')
|
|
if (data && data.length > 0) {
|
|
src.value = data
|
|
}
|
|
} finally {
|
|
loading.value = false
|
|
}
|
|
})
|
|
</script>
|
|
|
|
<template>
|
|
<Page auto-content-height>
|
|
<DocAlert title="服务监控" url="https://doc.iocoder.cn/server-monitor/" />
|
|
|
|
<IFrame v-if="!loading" v-loading="loading" :src="src" />
|
|
</Page>
|
|
</template>
|