Vue 自定义仿word表单输入框组件,让操作更符合用户习惯

光标未进入时

光标进入后

这样就能实现光标不进入时不会显示光标和线框,整体看起来更美观

组件代码如下:

<template >
    <div class="pager-input flex flex-col border-box full-width"   >
        <div  class="font-l border-box text margin-left-m text" style="font-family: FangSong;">{{val}}</div>
        <div  v-if="val === ''" class="color-white textplus" >请输入</div>
        <div class="flex flex-col full-width input hidden">
            <input class="font-m ui-input full-width"  placeholder="请输入" v-model="val" type="text"  @input="inputChange"/>
        </div>
    </div>
</template>

<script>
    export default{
        name:'PagerInput',
        data() {
            return {
                val:"",
            }
        },
        props: {
            value:{}
        },
        model: {
            prop: "value",
            event: "change"
        },
        watch:{
            value:{
                handler(newValue) {
                    this.val =  newValue;
                },
                immediate: true,
                deep: true   //深度监听                
            },
        },
        methods:{
            inputChange() {
                this.$emit("change", this.val);

            }
        }
    }
</script>

<style scoped>

    .pager-input:hover .text   {
        display: none;
    }
 
    .pager-input:hover .textplus   {
        display: none;
    }
    .pager-input:hover .input   {
        display: block;
    }

    


</style>

调用方法:

 <PaperInput v-model="pagerData.name"></PaperInput>

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

我是唐赢

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值