@@ -3,7 +3,7 @@ import type { MouseEvent } from 'react'
33import classNames from 'classnames'
44import { CSSTransition } from 'react-transition-group'
55import { View } from '@tarojs/components'
6- import { Close } from '@nutui/icons-react-taro'
6+ import { Failure , Close } from '@nutui/icons-react-taro'
77import Button from '@/packages/button/index.taro'
88import { DialogBasicProps } from './config'
99import { Content } from './content.taro'
@@ -115,22 +115,36 @@ export const BaseDialog: FunctionComponent<Partial<DialogProps>> & {
115115 }
116116 }
117117
118+ const btnClass =
119+ hideCancelButton || hideConfirmButton ? `${ classPrefix } -footer-block` : ''
120+
118121 return (
119122 footer || (
120123 < >
121- { ! hideCancelButton && (
122- < Button
123- type = "default"
124- className = { `${ classPrefix } -footer-cancel` }
125- onClick = { ( e ) => handleCancel ( e ) }
126- >
127- { cancelText || locale . cancel }
128- </ Button >
129- ) }
124+ { ! hideCancelButton &&
125+ ( footerDirection === 'vertical' ? (
126+ < View
127+ className = { `${ classPrefix } -footer-cancel ${ btnClass } ` }
128+ onClick = { ( e ) => handleCancel ( e as any ) }
129+ >
130+ { cancelText || locale . cancel }
131+ </ View >
132+ ) : (
133+ < Button
134+ type = "default"
135+ size = "large"
136+ className = { `${ classPrefix } -footer-cancel ${ btnClass } ` }
137+ onClick = { ( e ) => handleCancel ( e ) }
138+ >
139+ { cancelText || locale . cancel }
140+ </ Button >
141+ ) ) }
142+
130143 { ! hideConfirmButton && (
131144 < Button
145+ size = "large"
132146 type = "primary"
133- className = { classNames ( `${ classPrefix } -footer-ok` , {
147+ className = { classNames ( `${ classPrefix } -footer-ok ${ btnClass } ` , {
134148 disabled : disableConfirmButton ,
135149 } ) }
136150 disabled = { disableConfirmButton }
@@ -157,9 +171,10 @@ export const BaseDialog: FunctionComponent<Partial<DialogProps>> & {
157171 [ `${ classPrefix } -close` ] : true ,
158172 [ `${ classPrefix } -close-${ closeIconPosition } ` ] : true ,
159173 } )
174+ const systomIcon = closeIconPosition !== 'bottom' ? < Close /> : < Failure />
160175 return (
161176 < View className = { closeClasses } onClick = { handleCancel } >
162- { React . isValidElement ( closeIcon ) ? closeIcon : < Close /> }
177+ { React . isValidElement ( closeIcon ) ? closeIcon : systomIcon }
163178 </ View >
164179 )
165180 }
0 commit comments