feature: append button-edit event
This commit is contained in:
parent
b7ef12bb60
commit
10ef216d4e
|
@ -18,8 +18,8 @@ export default defineComponent({
|
||||||
'enterHandle',
|
'enterHandle',
|
||||||
'iconMouseEnter',
|
'iconMouseEnter',
|
||||||
'iconMouseLeave',
|
'iconMouseLeave',
|
||||||
'keyupHandle',
|
'keyup',
|
||||||
'keydownHandle',
|
'keydown',
|
||||||
'inputClick',
|
'inputClick',
|
||||||
'input',
|
'input',
|
||||||
'update:modelValue',
|
'update:modelValue',
|
||||||
|
@ -41,8 +41,9 @@ export default defineComponent({
|
||||||
onClickTextBox,
|
onClickTextBox,
|
||||||
onFocusTextBox,
|
onFocusTextBox,
|
||||||
onInput,
|
onInput,
|
||||||
|
onKeyDownTextBox,
|
||||||
|
onKeyUpTextBox,
|
||||||
onMouseDownTextBox,
|
onMouseDownTextBox,
|
||||||
onMouseOverTextBox,
|
|
||||||
onTextBoxValueChange,
|
onTextBoxValueChange,
|
||||||
} = useTextBox(props, context);
|
} = useTextBox(props, context);
|
||||||
|
|
||||||
|
@ -57,7 +58,7 @@ export default defineComponent({
|
||||||
return () => {
|
return () => {
|
||||||
return (
|
return (
|
||||||
<div class="f-cmp-inputgroup" id={props.id}>
|
<div class="f-cmp-inputgroup" id={props.id}>
|
||||||
<div class={[props.customClass, inputGroupClass.value]}>
|
<div class={[props.customClass, inputGroupClass.value]} onMouseenter={onMouseEnterTextBox} onMouseleave={onMouseLeaveTextBox}>
|
||||||
<input
|
<input
|
||||||
name="input-group-value"
|
name="input-group-value"
|
||||||
autocomplete={'' + props.autoComplete}
|
autocomplete={'' + props.autoComplete}
|
||||||
|
@ -75,16 +76,24 @@ export default defineComponent({
|
||||||
onClick={onClickTextBox}
|
onClick={onClickTextBox}
|
||||||
onFocus={onFocusTextBox}
|
onFocus={onFocusTextBox}
|
||||||
onInput={onInput}
|
onInput={onInput}
|
||||||
onKeydown={onMouseEnterTextBox}
|
onKeydown={onKeyDownTextBox}
|
||||||
|
onKeyup={onKeyUpTextBox}
|
||||||
onMousedown={onMouseDownTextBox}
|
onMousedown={onMouseDownTextBox}
|
||||||
/>
|
/>
|
||||||
<div class={buttonClass.value}>
|
<div class={buttonClass.value}>
|
||||||
{showClearButton.value && (
|
{showClearButton.value && (
|
||||||
<span class="input-group-text input-group-clear">
|
<span class="input-group-text input-group-clear" onClick={onClearValue}>
|
||||||
<i class="f-icon modal_close"></i>
|
<i class="f-icon modal_close"></i>
|
||||||
</span>
|
</span>
|
||||||
)}
|
)}
|
||||||
{props.buttonContent && <span class="input-group-text" v-html={props.buttonContent}></span>}
|
{props.buttonContent && (
|
||||||
|
<span
|
||||||
|
class="input-group-text"
|
||||||
|
onClick={onClickButton}
|
||||||
|
onMouseenter={onMouseEnterButton}
|
||||||
|
onMouseleave={onMouseLeaveButton}
|
||||||
|
v-html={props.buttonContent}></span>
|
||||||
|
)}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -35,9 +35,11 @@ export interface UseClear {
|
||||||
/**
|
/**
|
||||||
* 鼠标进入输入框事件响应函数
|
* 鼠标进入输入框事件响应函数
|
||||||
*/
|
*/
|
||||||
onMouseEnterTextBox: ($event: KeyboardEvent) => void;
|
onMouseEnterTextBox: ($event: MouseEvent) => void;
|
||||||
|
/**
|
||||||
onMouseLeaveTextBox: ($event: Event) => void;
|
* 鼠标移出输入框事件响应函数
|
||||||
|
*/
|
||||||
|
onMouseLeaveTextBox: ($event: MouseEvent) => void;
|
||||||
}
|
}
|
||||||
|
|
||||||
export interface UseTextBox {
|
export interface UseTextBox {
|
||||||
|
@ -79,9 +81,13 @@ export interface UseTextBox {
|
||||||
*/
|
*/
|
||||||
onMouseDownTextBox: ($event: MouseEvent) => void;
|
onMouseDownTextBox: ($event: MouseEvent) => void;
|
||||||
/**
|
/**
|
||||||
* 鼠标滑过输入框事件响应函数
|
* 键盘在输入框按下事件
|
||||||
*/
|
*/
|
||||||
onMouseOverTextBox: ($event: Event) => void;
|
onKeyDownTextBox: ($event: Event) => void;
|
||||||
|
/**
|
||||||
|
* 键盘在输入框抬起事件
|
||||||
|
*/
|
||||||
|
onKeyUpTextBox: ($event: Event) => void;
|
||||||
/**
|
/**
|
||||||
* 输入框值变化事件响应函数
|
* 输入框值变化事件响应函数
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -29,6 +29,9 @@ export function useClear(props: ButtonEditProps, context: SetupContext): UseClea
|
||||||
}
|
}
|
||||||
|
|
||||||
function onMouseEnterTextBox($event: Event) {
|
function onMouseEnterTextBox($event: Event) {
|
||||||
|
if (!showClearButton.value) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
if (this.value) {
|
if (this.value) {
|
||||||
if (!props.editable) {
|
if (!props.editable) {
|
||||||
if (!props.disable) {
|
if (!props.disable) {
|
||||||
|
@ -44,6 +47,9 @@ export function useClear(props: ButtonEditProps, context: SetupContext): UseClea
|
||||||
}
|
}
|
||||||
|
|
||||||
function onMouseLeaveTextBox($event: Event) {
|
function onMouseLeaveTextBox($event: Event) {
|
||||||
|
if (!showClearButton.value) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
hasShownClearButton.value = false;
|
hasShownClearButton.value = false;
|
||||||
toggleClearIcon($event, false);
|
toggleClearIcon($event, false);
|
||||||
}
|
}
|
||||||
|
|
|
@ -60,8 +60,12 @@ export function useTextBox(props: ButtonEditProps, context: SetupContext): UseTe
|
||||||
$event.stopPropagation();
|
$event.stopPropagation();
|
||||||
}
|
}
|
||||||
|
|
||||||
function onMouseOverTextBox($event: Event) {
|
function onKeyDownTextBox($event: Event) {
|
||||||
console.log('on onMouseOverInExtentInfo');
|
context.emit('keydown', $event);
|
||||||
|
}
|
||||||
|
|
||||||
|
function onKeyUpTextBox($event: Event) {
|
||||||
|
context.emit('keyup', $event);
|
||||||
}
|
}
|
||||||
|
|
||||||
function onTextBoxValueChange(newValue: string, emit = true) {
|
function onTextBoxValueChange(newValue: string, emit = true) {
|
||||||
|
@ -83,8 +87,9 @@ export function useTextBox(props: ButtonEditProps, context: SetupContext): UseTe
|
||||||
onClickTextBox,
|
onClickTextBox,
|
||||||
onFocusTextBox,
|
onFocusTextBox,
|
||||||
onInput,
|
onInput,
|
||||||
|
onKeyDownTextBox,
|
||||||
|
onKeyUpTextBox,
|
||||||
onMouseDownTextBox,
|
onMouseDownTextBox,
|
||||||
onMouseOverTextBox,
|
|
||||||
onTextBoxValueChange,
|
onTextBoxValueChange,
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue