<template>
<el-row
:gutter="20"
class="page-box"
>
<el-col>
<Breadcrumb
:breadcrumbs="[{
label: 'LAN',
}]"
/>
</el-col>
<el-col>
<el-tabs
v-model="lanActiveName"
:tab-position="tabPosition"
@tab-click="handleLanClick"
>
<el-tab-pane
v-for="index in lanNum"
:key="index"
:label="'LAN'+ index"
:name="String(index-1)"
>
<Lan
v-if="comType==='second'"
ref="lanData"
:data="lanForm"
style="width: 50%"
/>
<el-button
type="primary"
style="margin-left: 44%"
@click="onLanSubmit(index-1)"
>
保存
</el-button>
</el-tab-pane>
</el-tabs>
</el-col>
</el-row>
</template>
<script>
import Breadcrumb from '@/component/breadcrumb.vue';
import axios from 'axios';
import baseUrl from '@/service/api';
import LAN from './lan.vue';
import LanDefaultValue from './LanDefaultValue.json'; // wanDefaultValue是form的默认值
import deviceConf from '../../../../device-conf.js';
export default {
components: {
Breadcrumb,
LAN,
},
data() {
const {lan, serial} = deviceConf;
return {
lanNum: lan.num,
lanForm: {},
};
},
async created() {
await this.fetchData();
},
methods: {
// LAN的查询
async onGetLanForm(id) {
const api = `${baseUrl}/api/lan/${id}`;
const res = await this.$api.get(api);
this.lanForm = res;
},
// LAN的修改
async onLanSubmit(index) {
const isValid = await this.$refs.lanData[index].validate();
if (isValid) {
const api = `${baseUrl}/api/lan/${Number(index)}`;
await this.$api.post(api, this.lanForm);
await this.onGetLanForm(index);
}
},
},
};
</script>