goview_vue/src/utils/plugin.ts

43 lines
1.1 KiB
TypeScript
Raw Normal View History

2021-12-20 14:29:29 +08:00
import { icon } from '@/plugins'
import { dialogIconSize, maskClosable } from '@/settings/designSetting'
const { InformationCircleIcon } = icon.ionicons5
import { renderIcon } from '@/utils'
/**
* * render
* @param { Function } dialogFn dialog函数
* @param { Object} params
*/
export const goDialog = (
dialogFn: Function,
params: {
// 基本
type: 'delete'
message?: string
onPositiveCallback?: Function
onNegativeCallback?: Function
// 渲染函数
render?: boolean
contentFn?: Function
actionFn?: Function
}
) => {
const { type, message, onPositiveCallback, onNegativeCallback } = params
const tip = {
delete: '是否删除此数据'
}
dialogFn({
title: '提示',
icon: renderIcon(InformationCircleIcon, { size: dialogIconSize }),
content: message || tip[type] || '',
positiveText: '确定',
negativeText: '取消',
maskClosable: maskClosable,
onPositiveClick: () => {
onPositiveCallback && onPositiveCallback()
},
onNegativeClick: () => {
onNegativeCallback && onNegativeCallback()
}
})
}