mirror of
https://github.com/1Panel-dev/1Panel.git
synced 2025-01-19 08:19:15 +08:00
style: 网站跳转按钮挪到网站域名设置页面
This commit is contained in:
parent
1111b6b494
commit
92a5d6faeb
@ -3,6 +3,11 @@
|
||||
<template #toolbar>
|
||||
<el-button type="primary" plain @click="openCreate">{{ $t('website.addDomain') }}</el-button>
|
||||
</template>
|
||||
<el-table-column width="30px">
|
||||
<template #default="{ row }">
|
||||
<el-button link :icon="Promotion" @click="openUrl(row.domain)"></el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column :label="$t('website.domain')" prop="domain"></el-table-column>
|
||||
<el-table-column :label="$t('website.port')" prop="port"></el-table-column>
|
||||
<fu-table-operations :ellipsis="1" :buttons="buttons" :label="$t('commons.table.operate')" fixed="right" fix />
|
||||
@ -14,10 +19,11 @@
|
||||
import ComplexTable from '@/components/complex-table/index.vue';
|
||||
import Domain from './create/index.vue';
|
||||
import { Website } from '@/api/interface/website';
|
||||
import { DeleteDomain, ListDomains } from '@/api/modules/website';
|
||||
import { DeleteDomain, GetWebsite, ListDomains } from '@/api/modules/website';
|
||||
import { computed, onMounted, ref } from 'vue';
|
||||
import i18n from '@/lang';
|
||||
import { useDeleteData } from '@/hooks/use-delete-data';
|
||||
import { Promotion } from '@element-plus/icons-vue';
|
||||
|
||||
const props = defineProps({
|
||||
id: {
|
||||
@ -31,6 +37,7 @@ const id = computed(() => {
|
||||
let loading = ref(false);
|
||||
const data = ref<Website.Domain[]>([]);
|
||||
const domainRef = ref();
|
||||
const website = ref<Website.WebsiteDTO>();
|
||||
|
||||
const buttons = [
|
||||
{
|
||||
@ -48,6 +55,11 @@ const openCreate = () => {
|
||||
domainRef.value.acceptParams(id.value);
|
||||
};
|
||||
|
||||
const openUrl = (domain: string) => {
|
||||
const url = website.value.protocol.toLowerCase() + '://' + domain;
|
||||
window.open(url);
|
||||
};
|
||||
|
||||
const deleteDoamin = async (domainId: number) => {
|
||||
await useDeleteData(DeleteDomain, { id: domainId }, 'commons.msg.delete');
|
||||
search(id.value);
|
||||
@ -64,5 +76,14 @@ const search = (id: number) => {
|
||||
});
|
||||
};
|
||||
|
||||
onMounted(() => search(id.value));
|
||||
const getWebsite = (id: number) => {
|
||||
GetWebsite(id).then((res) => {
|
||||
website.value = res.data;
|
||||
});
|
||||
};
|
||||
|
||||
onMounted(() => {
|
||||
search(id.value);
|
||||
getWebsite(id.value);
|
||||
});
|
||||
</script>
|
||||
|
@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<el-tabs tab-position="left" v-model="tabIndex">
|
||||
<el-tab-pane :label="$t('website.domainConfig')">
|
||||
<Doamin :key="id" :id="id" v-if="tabIndex == '0'"></Doamin>
|
||||
<Doamin :key="id" :id="id" v-if="tabIndex == '0' && id > 0"></Doamin>
|
||||
</el-tab-pane>
|
||||
<el-tab-pane :label="$t('website.sitePath')">
|
||||
<SitePath :id="id" v-if="tabIndex == '1'"></SitePath>
|
||||
|
@ -66,11 +66,6 @@
|
||||
@search="search()"
|
||||
:class="{ mask: nginxStatus != 'Running' }"
|
||||
>
|
||||
<el-table-column width="30px">
|
||||
<template #default="{ row }">
|
||||
<el-button link :icon="Promotion" @click="openUrl(row)"></el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column :label="$t('commons.table.name')" fix prop="primaryDomain" min-width="120px">
|
||||
<template #default="{ row }">
|
||||
<Tooltip @click="openConfig(row.id)" :text="row.primaryDomain" />
|
||||
@ -180,7 +175,7 @@ import { ElMessageBox } from 'element-plus';
|
||||
import { dateFormatSimple } from '@/utils/util';
|
||||
import { MsgSuccess } from '@/utils/message';
|
||||
import { useI18n } from 'vue-i18n';
|
||||
import { Promotion, VideoPlay, VideoPause } from '@element-plus/icons-vue';
|
||||
import { VideoPlay, VideoPause } from '@element-plus/icons-vue';
|
||||
import MsgInfo from '@/components/msg-info/index.vue';
|
||||
|
||||
const shortcuts = [
|
||||
@ -228,11 +223,6 @@ let req = reactive({
|
||||
websiteGroupId: 0,
|
||||
});
|
||||
|
||||
const openUrl = (row: Website.WebsiteDTO) => {
|
||||
const url = row.protocol.toLowerCase() + '://' + row.primaryDomain;
|
||||
window.open(url);
|
||||
};
|
||||
|
||||
const search = async () => {
|
||||
req.page = paginationConfig.currentPage;
|
||||
req.pageSize = paginationConfig.pageSize;
|
||||
|
Loading…
x
Reference in New Issue
Block a user