Commit 808b936a by yzh

feat:esa爬虫静态页面

parent aa2540fa
......@@ -236,7 +236,7 @@ const handleExport = async () => {
// 4. 使用之前获取的句柄保存文件
await saveToSelectedLocation(res.data, fileHandle);
loading.close();
ElMessage.success('ZIP文件保存成功');
ElMessage.success('数据导出成功');
close()
} catch (e) {
console.error('导出失败', e);
......@@ -246,8 +246,8 @@ const handleExport = async () => {
}
});
} catch (error) {
console.error('操作失败', error);
ElMessage.error('无法打开保存对话框,请使用浏览器默认下载');
console.error(error);
// ElMessage.error('无法打开保存对话框,请使用浏览器默认下载');
}
};
......
<!-- 基于 ruoyi-vue3 的 Pagination 重构,核心是简化无用的属性,并使用 ts 重写 -->
<template>
<el-pagination
<el-config-provider :locale="zhCn">
<el-pagination
v-show="total > 0"
v-model:current-page="currentPage"
v-model:page-size="pageSize"
......@@ -9,15 +10,28 @@
:pager-count="pagerCount"
:total="total"
class="mt-4"
layout="total, sizes, prev, pager, next, jumper"
layout="total,sizes, prev, pager, next, jumper"
@size-change="handleSizeChange"
@current-change="handleCurrentChange"
jumper-text="跳转"
/>
</el-config-provider>
</template>
<script lang="ts" setup>
import { computed } from 'vue'
// ElConfigProvider 组件
import { ElConfigProvider } from 'element-plus';
// 引入中文包
import zhCn from 'element-plus/es/locale/lang/zh-cn';
defineOptions({ name: 'Pagination' })
// 更改分页文字
zhCn.el.pagination.total = '共 `{total} 条`';
zhCn.el.pagination.goto = '跳至';
zhCn.el.pagination.pagesize = '条/页';
zhCn.el.pagination.pageClassifier = '页';
const props = defineProps({
// 总条目数
total: {
......
<template>
<div class="text-left p-4 toolbarStyle">
<div class="formStyle">
<el-form inline>
<el-form-item>
<el-text class="mx-1">目标名称:</el-text>
</el-form-item>
<el-form-item>
<div>
<el-input placeholder="请输入" v-model="searchTargetName" style="width: 180px" />
</div>
</el-form-item>
<el-form-item>
<el-text class="mx-1">获取时间:</el-text>
</el-form-item>
<el-form-item>
<el-date-picker type="datetimerange" format="YYYY-MM-DD HH:mm:ss" v-model="searchTimeValue"
start-placeholder="开始时间" style="width: 330px" end-placeholder="结束时间"
date-format="YYYY/MM/DD ddd" time-format="A hh:mm:ss" value-format="YYYY-MM-DD HH:mm:ss" />
</el-form-item>
<el-form-item>
<el-text class="mx-1">SNS Notice ID:</el-text>
</el-form-item>
<el-form-item>
<el-input placeholder="请输入" v-model="searchTargetId" style="width: 170.5px" />
</el-form-item>
<el-form-item>
<el-space>
<el-button type="primary" @click="handleSearch">查询</el-button>
<el-button type="primary" @click="getData">重置表格</el-button>
</el-space>
</el-form-item>
</el-form>
</div>
</div>
<div class="m-t-5" />
<div>
<el-table :data="tableData" style="width: 100%" border :row-style="{ height: '42.5px' }"
:header-cell-style="{ textAlign: 'center' }" :cell-style="{ textAlign: 'center' }">
<!-- <el-table-column type="selection" width="40" /> -->
<el-table-column property="number" label="序号" width="55" type="index" />
<el-table-column property="item.ntc_id" label="目标名称" show-overflow-tooltip />
<el-table-column property="identity.adm_name_e" label="站点名称" show-overflow-tooltip />
<el-table-column property="identity.sat_name" label="距离" show-overflow-tooltip />
<el-table-column property="item.plan_txt" label="往返光时" show-overflow-tooltip />
<el-table-column property="item.plan_txt" label="行动开始时间" show-overflow-tooltip />
<el-table-column property="item.plan_txt" label="行动结束时间" show-overflow-tooltip />
<el-table-column property="item.plan_txt" label="跟踪开始时间" show-overflow-tooltip />
<el-table-column property="item.plan_txt" label="跟踪结束时间" show-overflow-tooltip />
<el-table-column property="item.plan_txt" label="支持类型" show-overflow-tooltip />
<el-table-column property="identity.ntc_type" label="目标在线状态" show-overflow-tooltip>
<template #default="scope">
{{ scope.row.identity.ntc_type === 'G' ? '是' : '否' }}
</template>
</el-table-column>
<el-table-column property="identity.long_nom" label="目标接收状态" show-overflow-tooltip>
<template #default="scope">
{{ scope.row.identity.long_nom === null ? '-' : scope.row.identity.long_nom }}
</template>
</el-table-column>
<el-table-column property="item.minPerigee" label="目标传输状态" show-overflow-tooltip>
<template #default="scope">
{{ scope.row.item.minPerigee === null ? '-' : scope.row.item.minPerigee }}
</template>
</el-table-column>
<el-table-column fixed="right" label="操作" min-width="120">
<template #default>
<el-button link type="primary" size="small" @click="handleDetails">
目标信息
</el-button>
<el-button link type="primary" size="small" @click="handleStationDetails">站点信息</el-button>
</template>
</el-table-column>
</el-table>
<div class="pagination w-full flex flex-row-reverse pr-4 m-t-4">
<Pagination :total="pageObj.total" v-model:page="pageObj.pageNo" v-model:limit="pageObj.pageSize"
@pagination="getData" />
</div>
</div>
<div class="detailForm">
<el-dialog v-model="detailVisibleValue" center width="765px" align-center @close="handleClose" draggable>
<template #header>
<div class="text-center font-size-8">
详情
</div>
</template>
<el-form label-width="155px" size="small" class="px-4">
<div>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="目标名称:" label-position="left">
<el-input v-model="targetName" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="任务类型:" label-position="left">
<el-input v-model="targetMissionType" />
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="目标运行轨道:" label-position="left">
<el-input v-model="targetOrbit" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="目标尺寸:" label-position="left">
<el-input v-model="targetDimension" />
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="目标发射质量:" label-position="left">
<el-input v-model="targetLaunchMass" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="目标干质量:" label-position="left">
<el-input v-model="targetDryMass" />
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="近地点:" label-position="left">
<el-input v-model="targetPerigee" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="远地点:" label-position="left">
<el-input v-model="targetApogee" />
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="目标功率:" label-position="left">
<el-input v-model="targetPower" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="轨道倾角:" label-position="left">
<el-input v-model="targetInclination" />
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="发射日期:" label-position="left">
<el-input v-model="targetLaunchDate" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="发射地点:" label-position="left">
<el-input v-model="targetLaunchLocation" />
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="轨道周期:" label-position="left">
<el-input v-model="targetPeriod" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="相关仪器:" label-position="left">
<el-input v-model="targetInstruments" />
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="服役日期:" label-position="left">
<el-input v-model="targetServiceDate" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="是否为核心任务:" label-position="left">
<el-input v-model="targetIsCoreMission" />
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="太阳风速:" label-position="left">
<el-input v-model="targetSolarWindSpeed" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="太阳通量密度:" label-position="left">
<el-input v-model="targetSolarFluxDensity" />
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="是否在仪表盘中显示:" label-position="left">
<el-input v-model="targetIsShowInDashboard" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="类型:" label-position="left">
<el-input v-model="targetType" />
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="描述:" label-position="left">
<el-input v-model="targetDescription" />
</el-form-item>
</el-col>
</el-row>
</div>
</el-form>
</el-dialog>
</div>
<div class="detailForm">
<el-dialog v-model="stationVisibleValue" center width="880px" align-center @close="handleClose" draggable>
<template #header>
<div class="text-center font-size-8">
详情
</div>
</template>
<el-form label-width="196px" size="small" class="px-4">
<div>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="站点名称:" label-position="left">
<el-input v-model="stationName" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="所在国家:" label-position="left">
<el-input v-model="stationCountry" />
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="站点经度:" label-position="left">
<el-input v-model="stationLongitude" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="站点纬度:" label-position="left">
<el-input v-model="stationLatitude" />
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="站点海拔:" label-position="left">
<el-input v-model="stationAltitude" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="站点直径:" label-position="left">
<el-input v-model="stationDiameter" />
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="天线方位角速度:" label-position="left">
<el-input v-model="stationAzimuthSpeed" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="天线俯仰角速度:" label-position="left">
<el-input v-model="stationElevationSpeed" />
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="信号频段:" label-position="left">
<el-input v-model="stationBand" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="TMTC标准:" label-position="left">
<el-input v-model="stationTMTC" />
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="信号频率与定时:" label-position="left">
<el-input v-model="stationFrequencyAndTiming" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="站点天气情况:" label-position="left">
<el-input v-model="stationWeather" />
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="上行信号S频段极化:" label-position="left">
<el-input v-model="stationUplinkSPolarization" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="上行信号S频段等效全向辐射功率:" label-position="left">
<el-input v-model="stationUplinkSEirp" />
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="上行信号X频段极化:" label-position="left">
<el-input v-model="stationUplinkXPolarization" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="上行信号X频段等效全向辐射功率:" label-position="left">
<el-input v-model="stationUplinkXEirp" />
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="上行信号Ka频段极化:" label-position="left">
<el-input v-model="stationUplinkKaPolarization" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="上行信号Ka频段等效全向辐射功率:" label-position="left">
<el-input v-model="stationUplinkKaEirp" />
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="下行信号S频段极化:" label-position="left">
<el-input v-model="stationDownlinkSPolarization" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="下行信号S频段G/T比:" label-position="left">
<el-input v-model="stationDownlinkSGt" />
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="下行信号X频段极化:" label-position="left">
<el-input v-model="stationDownlinkXPolarization" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="下行信号X频段G/T比:" label-position="left">
<el-input v-model="stationDownlinkXGt" />
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="下行信号Ka频段极化:" label-position="left">
<el-input v-model="stationDownlinkKaPolarization" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="下行信号Ka频段G/T比:" label-position="left">
<el-input v-model="stationDownlinkKaGt" />
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="站点温度:" label-position="left">
<el-input v-model="stationTemperature" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="站点气压:" label-position="left">
<el-input v-model="stationPressure" />
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="站点湿度:" label-position="left">
<el-input v-model="stationHumidity" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="站点类型:" label-position="left">
<el-input v-model="stationType" />
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="描述:" label-position="left">
<el-input v-model="stationDescription" />
</el-form-item>
</el-col>
</el-row>
</div>
</el-form>
</el-dialog>
</div>
<exportDialog v-model:dialogVisible="showDeleteDialog" />
</template>
<script setup lang="ts">
import { onMounted, ref } from 'vue'
import Pagination from '@/components/pagination/index.vue'
import exportDialog from '@/components/Export/index.vue'
import { getItuList, getItuDetail, deleteItuData } from '@/api/spiderData'
import { ElMessage } from 'element-plus'
import { ta } from 'element-plus/es/locales.mjs'
const searchTargetName = ref('')
const searchTimeValue = ref('')
const searchTargetId = ref('')
const showDeleteDialog = ref(false)
const detailVisibleValue = ref(false)
const stationVisibleValue = ref(false)
// 目标详情信息
const targetName = ref('')
// 任务类型
const targetMissionType = ref('')
// 目标运行轨道
const targetOrbit = ref('')
// 目标尺寸
const targetDimension = ref('')
// 目标发射质量
const targetLaunchMass = ref('')
// 目标干质量
const targetDryMass = ref('')
// 近地点
const targetPerigee = ref('')
// 远地点
const targetApogee = ref('')
// 目标功率
const targetPower = ref('')
// 轨道倾角
const targetInclination = ref('')
// 轨道周期
const targetPeriod = ref('')
// 发射日期
const targetLaunchDate = ref('')
// 发射地点
const targetLaunchLocation = ref('')
// 相关仪器
const targetInstruments = ref('')
// 服役日期
const targetServiceDate = ref('')
// 是否为核心任务
const targetIsCoreMission = ref('')
// 太阳风速
const targetSolarWindSpeed = ref('')
// 太阳通量密度
const targetSolarFluxDensity = ref('')
// 是否在仪表盘中显示
const targetIsShowInDashboard = ref('')
// 目标类型
const targetType = ref('')
// 描述
const targetDescription = ref('')
// 站点详情信息
// 站点名称
const stationName = ref('')
// 站点所在国家
const stationCountry = ref('')
// 站点经度
const stationLongitude = ref('')
// 站点纬度
const stationLatitude = ref('')
// 站点海拔高度
const stationAltitude = ref('')
// 站点直径
const stationDiameter = ref('')
// 天线方位角速度
const stationAzimuthSpeed = ref('')
// 天线俯仰角速度
const stationElevationSpeed = ref('')
// 天线信号频段
const stationBand = ref('')
// TMTC标准
const stationTMTC = ref('')
// 信号频率与定时
const stationFrequencyAndTiming = ref('')
// 天气
const stationWeather = ref('')
// 上行信号S频段极化
const stationUplinkSPolarization = ref('')
// 上行信号S频段等效全向辐射功率
const stationUplinkSEirp = ref('')
// 上行信号X频段极化
const stationUplinkXPolarization = ref('')
// 上行信号X频段等效全向辐射功率
const stationUplinkXEirp = ref('')
// 上行信号Ka频段极化
const stationUplinkKaPolarization = ref('')
// 上行信号Ka频段等效全向辐射功率
const stationUplinkKaEirp = ref('')
// 下行信号S频段极化
const stationDownlinkSPolarization = ref('')
// 下行信号S频段G/T比
const stationDownlinkSGt = ref('')
// 下行信号X频段极化
const stationDownlinkXPolarization = ref('')
// 下行信号X频段G/T比
const stationDownlinkXGt = ref('')
// 下行信号Ka频段极化
const stationDownlinkKaPolarization = ref('')
// 下行信号Ka频段G/T比
const stationDownlinkKaGt = ref('')
// 温度
const stationTemperature = ref('')
// 气压
const stationPressure = ref('')
// 湿度
const stationHumidity = ref('')
// 站点类型
const stationType = ref('')
// 描述
const stationDescription = ref('')
const tableData = ref([])
const pageObj = ref({
total: 0,
pageSize: 10,
pageNo: 1
})
// 查看数据详情的方法
const handleDetails = async (id: any) => {
detailVisibleValue.value = true
}
//
const handleStationDetails = async (id: any) => {
stationVisibleValue.value = true
}
// 获取itu数据列表的方法
const getData = async () => {
const res = await getItuList({ page: pageObj.value.pageNo, size: pageObj.value.pageSize })
searchTargetName.value = ''
searchTargetId.value = ''
searchTimeValue.value = ''
pageObj.value.total = res.data.total
tableData.value = res.data.list
}
const handleClose = () => {
detailVisibleValue.value = false
}
const handleSearch = async () => {
if (searchTargetName.value === '' && searchTargetId.value === '' && searchTimeValue.value === '') {
ElMessage.warning('请输入搜索内容')
return
}
const res = await getItuList({ sat_name: searchTargetName.value, ntc_id: searchTargetId.value, times: searchTimeValue.value, page: pageObj.value.pageNo, size: pageObj.value.pageSize })
pageObj.value.total = res.data.total
tableData.value = res.data.list
}
onMounted(() => {
getData()
})
</script>
<style scoped lang="scss">
// 调整表单项间距
.detailForm {
// background-image: url("@/assets/picture/dialog1.png");
// background-size: 100% 100%;
// background-repeat: no-repeat;
.el-dialog-title {
font-size: 180px;
}
.el-form-item {
margin-bottom: 20px !important;
}
}
/* 工具栏样式 */
.toolbarStyle {
background-image: url("@/assets/picture/box3.png");
background-size: 100% 100%;
background-repeat: no-repeat;
}
/* 表格样式 */
.formStyle {
display: flex;
justify-content: space-around;
padding: 3px;
margin-top: 1%;
}
/* 文字样式 */
.el-text {
color: #FFFFFF;
}
</style>
<style>
.el-input {
--el-input-text-color: #FFFFFF;
}
/* 修改el选择器的样式 */
.el-select__wrapper {
background-color: #1d5484;
box-shadow: none;
}
/* 删除el选择器选中时的边框 */
.is-hovering {
box-shadow: none !important;
}
/* 修改el输入框的样式 */
.el-input__wrapper {
background-color: #1d5484;
box-shadow: none;
}
/* 修改el下拉框的背景颜色 */
.el-select-dropdown {
background-color: #1d5484;
}
/* 修改el下拉框选项的字体颜色 */
.el-select-dropdown__item {
color: #FFFFFF;
}
/* 修改el下拉框选项选中时的文字颜色 */
.el-select-dropdown__item:hover {
color: #409eff;
}
/* 修改el日期选择器的边框为none */
.el-date-editor {
--el-input-border-color: none
}
.el-button:focus {
outline: none;
}
</style>
\ No newline at end of file
......@@ -35,6 +35,8 @@
<!-- ST数据页面组件 -->
<stDataTab v-if="mode === 'ST数据'">
</stDataTab>
<esDataTab v-if="mode === 'ESA数据'">
</esDataTab>
</div>
<exportDialog v-model:dialogVisible="showDeleteDialog" @confirm="handleExportConfirm" />
......@@ -48,13 +50,15 @@ import allDataTab from './components/allDataTab.vue'
import ituDataTab from './components/ituDataTab.vue'
import stDataTab from './components/stDataTab.vue'
import dsnDataTab from './components/dsnData/dsnTab.vue'
import esDataTab from './components/esDataTab.vue'
import exportDialog from '@/components/Export/index.vue'
import { genFileId } from 'element-plus'
import type { UploadInstance, UploadProps, UploadRawFile } from 'element-plus'
// const
const mode = ref('DSN数据')
const showDeleteDialog = ref(false)
const sizeOptions = ['DSN数据', 'ITU数据', 'ST数据']
const sizeOptions = ['DSN数据', 'ITU数据', 'ST数据', 'ES数据']
const route = useRoute()
const router = useRouter()
const modeValue = ref<any>('数据展示')
......
......@@ -7,8 +7,8 @@
</el-form-item>
<el-form-item label="所属爬虫:" v-if="currentMode === AddMode.ADD_TASK" prop="spiderTypeValue">
<el-select v-model="ruleForm.spiderTypeValue" placeholder="请选择所属爬虫" style="width: 90%" >
<el-option v-for="item in spiderTypeOptions" :key="item.value" :label="item.label"
:value="item.value" :id="item.value" />
<el-option v-for="item in spiderTypeOptions" :key="item.spider" :label="item.spider"
:value="item.spider" :id="item.spider" />
</el-select>
</el-form-item>
<el-form-item label="执行频率:" prop="cronExpression">
......@@ -35,6 +35,7 @@ import { AddMode } from './enum'
import { Crontab } from '@/components/Crontab/index'
import type { FormInstance, FormRules } from 'element-plus'
import { ElMessage } from 'element-plus'
import { getSpiderList } from '@/api/system.ts'
interface RuleForm {
taskName: string
......@@ -59,7 +60,7 @@ const props = defineProps<addDialogPropType>()
const rules = ref<FormRules<RuleForm>>({
taskName: [
{ required: true, message: '请输入任务名称', trigger: 'blur' },
{ min: 1, max: 50, message: '任务名称应在1-50个字符之间', trigger: 'blur' },
{ min: 2, max: 50, message: '任务名称应在2-20个字符之间', trigger: 'blur' },
],
spiderTypeValue: [
{
......@@ -93,20 +94,7 @@ const emit = defineEmits(['update:dialogVisible', 'confirm', 'update:mode', 'get
// 组件的状态
const currentVisible = ref(props.dialogVisible)
const currentMode = ref(props.mode)
const spiderTypeOptions = ref([
{
value: 'api_spider',
label: 'api_spider'
},
{
value: 'dsn_now',
label: 'dsn_now'
},
{
value: 'itu_space_explorer',
label: 'itu_space_explorer'
},
])
const spiderTypeOptions = ref()
const taskParams = ref({
scrapyd_server_id: '1',
schedule_type: '0',
......@@ -162,7 +150,12 @@ const handleConfirm = async () => {
}
})
}
const getData = async () => {
const res = await getSpiderList({scrapydServerId:'1',project:'spiders'})
spiderTypeOptions.value = res.data
console.log(res);
}
// 监听props变化,同步给组件内部
watch(() => props.dialogVisible,
(newVal) => {
......@@ -202,7 +195,7 @@ watch(
{ immediate: true }
);
onMounted(() => {
getData()
})
</script>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment