fix: 修改 endpoint module 编辑新增时 立即点击save params不被保存的问题

This commit is contained in:
zhangyu
2021-07-05 17:14:53 +08:00
parent b1732cd538
commit e3adcd8d67
3 changed files with 97 additions and 85 deletions

View File

@@ -456,6 +456,8 @@ export default {
}, },
/* 保存 */ /* 保存 */
save () { save () {
this.prevent_opt.save = true
setTimeout(() => {
this.editEndpoint.configs.params = this.paramToJson(this.editEndpoint.paramObj) this.editEndpoint.configs.params = this.paramToJson(this.editEndpoint.paramObj)
this.editEndpoint.configs.labels = this.labelsToJson(this.editEndpoint.labelModule) this.editEndpoint.configs.labels = this.labelsToJson(this.editEndpoint.labelModule)
this.editEndpoint.paramObj = this.editEndpoint.paramObj.filter(item => item.value && item.value.length) this.editEndpoint.paramObj = this.editEndpoint.paramObj.filter(item => item.value && item.value.length)
@@ -498,10 +500,12 @@ export default {
} }
} }
} else { } else {
this.prevent_opt.save = false
return false return false
} }
}) })
}) })
}, 10)
}, },
/* 删除 */ /* 删除 */
del () { del () {

View File

@@ -454,6 +454,7 @@ export default {
}, },
/* 保存 */ /* 保存 */
save () { save () {
setTimeout(() => {
this.editModule.configs.params = this.paramToJson(this.editModule.paramObj) this.editModule.configs.params = this.paramToJson(this.editModule.paramObj)
this.editModule.configs.labels = this.labelsToJson(this.editModule.labelModule) this.editModule.configs.labels = this.labelsToJson(this.editModule.labelModule)
const params = { ...this.editModule } const params = { ...this.editModule }
@@ -494,9 +495,11 @@ export default {
}) })
} }
} else { } else {
this.prevent_opt.save = false
return false return false
} }
}) })
}, 10)
}, },
/* 删除 */ /* 删除 */
del () { del () {

View File

@@ -55,7 +55,7 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item class="half-form-item"> <el-form-item class="half-form-item">
<button class="nz-btn nz-btn-size-normal-new nz-btn-style-normal-new" type="button" @click="downloadAgent">{{$t('config.agent.agent.download')}}</button> <button :class="{'nz-btn-disabled':downloadAgentFlag}" :disabled="downloadAgentFlag" class="nz-btn nz-btn-size-normal-new nz-btn-style-normal-new" type="button" @click="downloadAgent">{{$t('config.agent.agent.download')}}</button>
</el-form-item> </el-form-item>
<div class="right-box-sub-title">{{$t('config.agent.agent.autoScript')}}</div> <div class="right-box-sub-title">{{$t('config.agent.agent.autoScript')}}</div>
<div style="margin-bottom: 20px;width: 100%"></div> <div style="margin-bottom: 20px;width: 100%"></div>
@@ -177,7 +177,8 @@ export default {
}, },
wgetVisible: false, wgetVisible: false,
curlVisible: false, curlVisible: false,
federationEnabled: !Number(localStorage.getItem('nz-prometheus-federation-enabled')) federationEnabled: !Number(localStorage.getItem('nz-prometheus-federation-enabled')),
downloadAgentFlag: false
} }
}, },
methods: { methods: {
@@ -245,7 +246,9 @@ export default {
} }
}, },
downloadAgent: function () { downloadAgent: function () {
this.downloadAgentFlag = true
axios.get('agent/download?os=' + this.agentParam.osType, { responseType: 'blob' }).then(data => { axios.get('agent/download?os=' + this.agentParam.osType, { responseType: 'blob' }).then(data => {
this.downloadAgentFlag = false
let fileName = 'confagent' let fileName = 'confagent'
const disposition = data.headers['content-disposition'] const disposition = data.headers['content-disposition']
if (disposition) { if (disposition) {
@@ -266,6 +269,8 @@ export default {
link.click() link.click()
window.URL.revokeObjectURL(link.href) window.URL.revokeObjectURL(link.href)
} }
}).catch(()=>{
this.downloadAgentFlag = false
}) })
} }
}, },