perf: 优化tree组件url参数

This commit is contained in:
“huailei000” 2023-02-07 11:29:59 +08:00 committed by huailei
parent 5112af8ba1
commit 8f5df65f0e
4 changed files with 27 additions and 2 deletions

View File

@ -12,6 +12,7 @@
>
<AssetTreeTable
ref="ListPage"
v-bind="$attrs"
:header-actions="headerActions"
:table-config="tableConfig"
class="tree-table"

View File

@ -15,6 +15,7 @@
:visible.sync="dialogVisible"
v-bind="$attrs"
:base-url="baseUrl"
:tree-url-query="treeUrlQuery"
@cancel="handleCancel"
@confirm="handleConfirm"
v-on="$listeners"
@ -34,6 +35,10 @@ export default {
type: String,
default: '/api/v1/assets/assets/'
},
treeUrlQuery: {
type: Object,
default: () => {}
},
value: {
type: Array,
default: () => []

View File

@ -39,6 +39,10 @@ export default {
type: String,
default: '/api/v1/assets/nodes/children/tree/'
},
treeUrlQuery: {
type: Object,
default: () => ({})
},
treeSetting: {
type: Object,
default: () => ({})
@ -54,6 +58,9 @@ export default {
},
data() {
const showAssets = this.treeSetting?.showAssets || this.showAssets
const treeUrlQuery = this.setTreeUrlQuery()
const assetTreeUrl = `${this.treeUrl}?assets=${showAssets ? '1' : '0'}&${treeUrlQuery}`
return {
treeTabConfig: {
activeMenu: 'CustomTree',
@ -72,7 +79,7 @@ export default {
showSearch: true,
url: this.url,
nodeUrl: this.nodeUrl,
treeUrl: `${this.treeUrl}?assets=${showAssets ? '1' : '0'}`,
treeUrl: assetTreeUrl,
callback: {
onSelected: (event, treeNode) => this.getAssetsUrl(treeNode)
},
@ -117,6 +124,15 @@ export default {
treeSetting.showDelete = this.$hasPerm('assets.delete_node')
},
methods: {
setTreeUrlQuery() {
let str = ''
for (const key in this.treeUrlQuery) {
str += `${key}=${this.treeUrlQuery[key]}&`
}
str = str.substr(0, str.length - 1)
return str
},
decorateRMenu() {
const show_current_asset = this.$cookie.get('show_current_asset') || '0'
if (show_current_asset === '1') {

View File

@ -24,7 +24,10 @@ export default {
label: this.$t('assets.Assets'),
el: {
value: [],
baseUrl: '/api/v1/assets/assets/?domain_enabled=true'
baseUrl: '/api/v1/assets/assets/?domain_enabled=true',
treeUrlQuery: {
domain_enabled: true
}
}
}
},