refactor: 重构优化

master
xiaojunnuo 2021-02-05 14:30:31 +08:00
parent 305824ff1a
commit 5cde165f0b
9 changed files with 26 additions and 17 deletions

View File

@ -9,11 +9,11 @@ export class AliyunDnsProvider extends AbstractDnsProvider {
desc: '',
input: {
accessProvider: {
label: 'Access提供者',
label: '授权',
type: [String, Object],
desc: 'AccessProviders的key 或 一个包含accessKeyId与accessKeySecret的对象',
desc: '需要aliyun类型的授权',
component: {
name: 'provider-selector',
name: 'access-provider-selector',
filter: 'aliyun'
},
required: true

View File

@ -9,11 +9,11 @@ export class DnspodDnsProvider extends AbstractDnsProvider {
desc: '腾讯云的域名解析接口已迁移到dnspod',
input: {
accessProvider: {
label: 'Access提供者',
label: '授权',
type: [String, Object],
desc: 'AccessProviders的key',
desc: '需要dnspod类型的授权',
component: {
name: 'provider-selector',
name: 'access-provider-selector',
filter: 'dnspod'
},
required: true

View File

@ -1,7 +1,12 @@
import os from 'os'
export default {
join (...dirs) {
const url = new URL('../' + dirs.join('/'), import.meta.url)
console.log('url', url)
return url.pathname
let path = url.pathname
if (os.type() === 'Windows_NT') {
path = path.substring(1)
}
return path
}
}

View File

@ -16,7 +16,8 @@
"vue-i18n": "^9.0.0-rc.2",
"core-js": "^3.8.1",
"vue": "^3.0.4",
"vue-router": "^4.0.1"
"vue-router": "^4.0.1",
"vue-json-editor": "^1.4.2"
},
"devDependencies": {
"@babel/core": "^7.12.10",

View File

@ -9,18 +9,19 @@ function handleInputs (inputs) {
if (item.component == null) {
item.component = {}
}
if (item.component.rules == null) {
item.component.rules = []
let rules = item.component.rules
if (rules == null) {
item.component.rules = rules = []
}
if (item.component.rules.length > 0) {
const hasRequired = item.rules.filter(rule => {
if (rules.length > 0) {
const hasRequired = rules.filter(rule => {
return rule.required === true
})
if (hasRequired.length > 0) {
return
}
}
item.component.rules.push({ required: true, message: '该项必填' })
rules.push({ required: true, message: '该项必填' })
delete item.required
}
})

View File

@ -3,13 +3,14 @@
<a-select
:value="value"
@update:value="valueUpdate"
placeholder="没有可选时请点右边按钮添加"
>
<a-select-option v-for="item of getProviders()" :key="item.key" :value="item.key" :disabled="isDisabled(item)">
{{ item.name }}
</a-select-option>
</a-select>
<a-button class="suffix" @click="providerManagerOpen">
管理授权
添加授权
</a-button>
</div>
<access-provider-manager ref="providerManagerRef"

View File

@ -26,7 +26,8 @@ export default {
attrs[key] = eval(value)
}
})
return () => h(resolveComponent(props.name), context.$attrs, props.children)
const comp = resolveComponent(props.name)
return () => h(comp, context.$attrs, props.children)
}
}
</script>

View File

@ -3,7 +3,7 @@
title="证书申请配置"
placement="right"
:closable="true"
width="500px"
width="600px"
v-model:visible="visible"
:after-visible-change="afterVisibleChange"
>

View File

@ -155,7 +155,7 @@
<div><a-button @click="exportsToZip"></a-button></div>
<br/>
<div> <a-button>仅导出配置</a-button></div>
<div> <a-button @click="exportsToJson"></a-button></div>
</div>
</div>
</div>