mirror of
https://gitee.com/myxzgzs/boyue-ui-admin-vue3
synced 2025-08-08 16:32:43 +08:00
接口选择器新增事件配置功能
This commit is contained in:
parent
5fe16b422c
commit
aa197a6fd6
@ -69,11 +69,24 @@ export const useApiSelect = (option: ApiSelectProps) => {
|
|||||||
if (isEmpty(props.url)) {
|
if (isEmpty(props.url)) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
switch (props.method) {
|
switch (props.method) {
|
||||||
case 'GET':
|
case 'GET':
|
||||||
let url: string = props.url
|
let url: string = props.url
|
||||||
if (props.remote) {
|
if (props.remote) {
|
||||||
url = `${url}?${props.remoteField}=${queryParam.value}`
|
if(queryParam.value!=undefined)
|
||||||
|
{
|
||||||
|
if(checkUrl(url))
|
||||||
|
{
|
||||||
|
url = `${url}&${props.remoteField}=${queryParam.value}`
|
||||||
|
}else
|
||||||
|
{
|
||||||
|
url = `${url}?${props.remoteField}=${queryParam.value}`
|
||||||
|
}
|
||||||
|
}else
|
||||||
|
{
|
||||||
|
url = `${url}`
|
||||||
|
}
|
||||||
}
|
}
|
||||||
parseOptions(await request.get({ url: url }))
|
parseOptions(await request.get({ url: url }))
|
||||||
break
|
break
|
||||||
@ -87,6 +100,11 @@ export const useApiSelect = (option: ApiSelectProps) => {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function checkUrl(url)
|
||||||
|
{
|
||||||
|
return url.includes('?')
|
||||||
|
}
|
||||||
|
|
||||||
function parseOptions(data: any) {
|
function parseOptions(data: any) {
|
||||||
// 情况一:如果有自定义解析函数优先使用自定义解析
|
// 情况一:如果有自定义解析函数优先使用自定义解析
|
||||||
if (!isEmpty(props.parseFunc)) {
|
if (!isEmpty(props.parseFunc)) {
|
||||||
|
@ -17,6 +17,7 @@ export const useSelectRule = (option: SelectRuleOption) => {
|
|||||||
icon: option.icon,
|
icon: option.icon,
|
||||||
label,
|
label,
|
||||||
name,
|
name,
|
||||||
|
event: option.event,
|
||||||
rule() {
|
rule() {
|
||||||
return {
|
return {
|
||||||
type: name,
|
type: name,
|
||||||
|
@ -46,5 +46,6 @@ export interface SelectRuleOption {
|
|||||||
label: string // label 名称
|
label: string // label 名称
|
||||||
name: string // 组件名称
|
name: string // 组件名称
|
||||||
icon: string // 组件图标
|
icon: string // 组件图标
|
||||||
props?: any[] // 组件规则
|
props?: any[], // 组件规则
|
||||||
|
event?: any[] // 事件
|
||||||
}
|
}
|
||||||
|
@ -63,7 +63,8 @@ export const useFormCreateDesigner = async (designer: Ref) => {
|
|||||||
name: 'ApiSelect',
|
name: 'ApiSelect',
|
||||||
label: '接口选择器',
|
label: '接口选择器',
|
||||||
icon: 'icon-server',
|
icon: 'icon-server',
|
||||||
props: [...apiSelectRule]
|
props: [...apiSelectRule],
|
||||||
|
event:['click','change','visibleChange','clear','blur','focus']
|
||||||
})
|
})
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
Loading…
x
Reference in New Issue
Block a user