chore(PasswordInput): renderPoints

This commit is contained in:
chenjiahan 2020-09-27 16:48:39 +08:00
parent 81bca27544
commit 1c020a9dac

View File

@ -32,11 +32,10 @@ export default createComponent({
emit('focus', event); emit('focus', event);
}; };
return () => { const renderPoints = () => {
const { mask, value, length, gutter, focused, errorInfo } = props;
const info = errorInfo || props.info;
const Points = []; const Points = [];
const { mask, value, length, gutter, focused } = props;
for (let i = 0; i < length; i++) { for (let i = 0; i < length; i++) {
const char = value[i]; const char = value[i];
const showBorder = i !== 0 && !gutter; const showBorder = i !== 0 && !gutter;
@ -65,16 +64,23 @@ export default createComponent({
); );
} }
return Points;
};
return () => {
const info = props.errorInfo || props.info;
return ( return (
<div class={bem()}> <div class={bem()}>
<ul <ul
class={[bem('security'), { [BORDER_SURROUND]: !gutter }]} class={[bem('security'), { [BORDER_SURROUND]: !props.gutter }]}
onTouchstart={onTouchStart} onTouchstart={onTouchStart}
> >
{Points} {renderPoints()}
</ul> </ul>
{info && ( {info && (
<div class={bem(errorInfo ? 'error-info' : 'info')}>{info}</div> <div class={bem(props.errorInfo ? 'error-info' : 'info')}>
{info}
</div>
)} )}
</div> </div>
); );