封装input 逐渐,且input插件必须带有默认值。

组件:

<template>
<div class="input-show">
<span class="name">{{title}}</span>
<span class="input">
<input
type="text"
v-on:input="$emit('input', $event.target.value)"
v-model="showDefaultVal"
>
</span>
</div>
</template> <script>
export default {
name: "InputShow",
data(){
return {
showDefaultVal: ''
}
},
props: {
title: {
type: String,
required: true
},
value: {
type: String
},
showDefault:{
type: String
} },
watch: {
value:function (val, oldVal) {
// console.log(oldVal);
this.showDefaultVal = val; },
showDefault: function (val, oldVal) {
console.log(val,oldVal);
if(!this.showDefault) return;
this.showDefaultVal = this.showDefault; }
}, }
</script> <style scoped lang="stylus">
.input-show
width 100%
line-height 90px
display flex
justify-content space-between
font-family:PingFangSC-Regular;
.name
font-size:28px;
font-weight:400;
color:rgba(26,26,26,1);
.input
input
width:455px;
border-radius:10px;
border:1Px solid rgba(204,204,204,1);
text-indent 22px
font-size:30px;
font-weight:400;
color:rgba(26,26,26,1);
line-height:90px; </style>

父子见中使用:

<template>
<div class="admin-user-detail">
<!--
<header>员工详情</header>
<div class="top-content">
<p class="p-row1">
<span>用户名:</span>
<span>{{detailData.user_name}}</span>
</p>
<p class="p-row2">
<span>真实姓名:</span>
<span>{{detailData.name}}</span>
</p>
<p class="p-row3">
<span>所属部门:</span>
<span>{{detailData.department_name}}</span>
</p>
<p class="p-row4">
<span>职位:</span>
<span>{{detailData.role_name}}</span>
</p>
<p class="p-row5">
<span>联系手机号:</span>
<span>{{detailData.mobile}}</span>
</p>
<p class="p-row6">
<span>微信:</span>
<span>{{detailData.wechat}}</span>
</p>
<p class="p-row7">
<span>邮箱:</span>
<span>{{detailData.email}}</span>
</p>
</div>
<div class="bottom-content">
<div class="p-row1">
<span>用户名:</span>
<span>{{detailData.user_name}}</span>
</div>
<div class="p-row2">
<div class="content">
<span>初始密码:</span>
<span>{{detailData.init_password}}</span>
</div>
<div class="btn">
<span class="reset-btn" @click="resetPassword">重置</span>
</div>
</div>
<div class="p-row3">
<div class="content">
<span>绑定手机号:</span>
<span>{{detailData.mobile}}</span>
</div>
<div class="btn">
<span class="reset-btn" @click="resetMobile">重置</span>
</div>
</div>
</div> -->
<BtnGoupBottom
btn-text-left="禁用"
btn-text-right="修改"
:btn-fun-left="handleDisabled"
:btn-fun-right="handleAmend"
></BtnGoupBottom>
<!--测试测-->
<AdminUserLayout>
<div class="content-block">
<!--<inputs v-model="name"><label slot="label-name">真实姓名</label></inputs>-->
<InputShow title="真实姓名" v-model="name" :showDefault="detaiDataName"></InputShow>
<InfoFrame></InfoFrame>
</div>
</AdminUserLayout> </div>
</template> <script>
import Api from "@/api/modules/adminUser"
import Input from "../components/basic/Input"
import SelectDefault from "../components/basic/SelectDefault"
import BtnGoupBottom from "../components/basic/BtnGroupBottom"
import AdminUserLayout from "../components/basic/AdminUserLayout"
import InfoFrame from "../components/basic/InfoFrame"
import InputShow from "../components/basic/InputShow" export default {
name: "AdminUserDetail",
components:{
inputs:Input,
SelectDefault:SelectDefault,
BtnGoupBottom,
AdminUserLayout,
InfoFrame,
InputShow
},
data(){
return{
detailData: {},
detaiDataName: '',
name: ''
}
}, watch: {
name: function (val, oldVal) {
console.log(val);
}
},
methods: {
//重置密码
resetPassword(){
//获取用户ID
let userID = this.$route.query.user_id;
Api.resetPsw({user_id: userID}).then((res)=>{
console.log(res);
});
},
//重置手机号
resetMobile(){
console.log(22);
//进行跳转
},
//禁用
handleDisabled(){
console.log('禁用');
},
//修改
handleAmend(){
console.log('修改');
}
},
created(){
//获取用户ID,请求用户详情
let userID = this.$route.query.user_id;
Api.AdminUserDetail({user_id: userID}).then((res)=>{
this.detailData = res.data;
this.detaiDataName = res.data.name;
// console.log(res);
}); } }
</script> <style scoped lang="stylus">
.admin-user-detail
position relative
width 100vw
height 100vh
.btn-group
display flex
width 100%
height 80px
position absolute
left 0
bottom 0
span
flex 1
background-color gray
.self-input input
width 455pxs </style>

效果图:

封装input 逐渐,且input插件必须带有默认值。的更多相关文章

  1. input文本框设置和移除默认值

    input文本框设置和移除默认值 这里想实现的效果是:设置和移除文本框默认值,如下图鼠标放到文本框中的时候,灰字消失. 1.可以用简单的方式,就是给input文本框加上onfocus属性,如下代码: ...

  2. HTML input文本框设置和移除默认值

    这里想实现的效果是:设置和移除文本框默认值,如下图鼠标放到文本框中的时候,灰字消失. 1.可以用简单的方式,就是给input文本框加上onfocus属性,如下代码: <input id=&quo ...

  3. js中input文本框设置和移除默认值

    这里想实现的效果是:设置和移除文本框默认值,如下图鼠标放到文本框中的时候,灰字消失. 1.可以用简单的方式,就是给input文本框加上onfocus属性,如下代码: <input id=&quo ...

  4. input默认值设置

    在input框里我们可以设置 一些默认值,在点击之后input之后就消失了 <input id="_le_name" type="text" onFocu ...

  5. C++之带有默认参数值的构造函数

    在一个类中 ,如果程序员没有写,任何一个构造函数,则编译器将为该类提供一个默认的构造函数,如果程序员对类的构造函数进行了重载,则编译器将不提供默构造函数,这里需要手动书写一个无参的构造函数, 无参的构 ...

  6. 高效开发之SASS篇 灵异留白事件——图片下方无故留白 你会用::before、::after吗 link 与 @import之对比 学习前端前必知的——HTTP协议详解 深入了解——CSS3新增属性 菜鸟进阶——grunt $(#form :input)与$(#form input)的区别

    高效开发之SASS篇   作为通往前端大神之路的普通的一只学鸟,最近接触了一样稍微高逼格一点的神器,特与大家分享~ 他是谁? 作为前端开发人员,你肯定对css很熟悉,但是你知道css可以自定义吗?大家 ...

  7. input子系统四 input事件处理【转】

    转自:https://blog.csdn.net/qwaszx523/article/details/54139897 转自http://blog.csdn.net/coldsnow33/articl ...

  8. [转载]Js小技巧||给input type=“password”的输入框赋默认值

    http://www.cnblogs.com/Raywang80s/archive/2012/12/06/2804459.html [转载]Js小技巧||给input type="passw ...

  9. 设置easyui input默认值

    /*设置input 焦点*/ $(function () { //集体调用 $(".formTextBoxes input").each(function () { $(this) ...

随机推荐

  1. Javascript入门(一)弹出方框

    今天要javascript做一个用网页弹出框框的效果,虽然没什么卵用. 效果如图,弹出一个“hello world”的框框. 1. 新建一个html 页面, 如图: <!DOCTYPE html ...

  2. Hibernate的学习(二)

    ---恢复内容开始--- 一.多表的建表原则 1.一对多的关系:例如 一个客户有多个联系人: 表与表一对多的关系:在一对多时,多的表中添加一个外键,用来和一的表的主键.产生联系. 2.多对多的关系:例 ...

  3. android屏蔽系统锁屏的办法

    最近在开发一个第三方锁屏,使用中需要屏蔽系统锁屏,故代码如下: 在第三方锁屏的服务中onCreate()方法中(第三方锁屏服务启动时关闭一次系统锁屏服务即可) KeyguardManager mKey ...

  4. ListBox滚动条 刷新列表之后 指定位置(置顶或滚动到最后)

    参数ObservableCollection<T>类型 滚动条在最上 ListBox.ScrollIntoView(ListBoxOC[0]);滚动条在最下 ListBox.ScrollI ...

  5. python下划线,私有变量

      转自:http://blog.sina.com.cn/s/blog_58649eb30100g4zo.html Python用下划线作为变量前缀和后缀指定特殊变量. "单下划线" ...

  6. 看完此文还不懂NB-IoT,你就过来掐死我吧...

    看完此文还不懂NB-IoT,你就过来掐死我吧....... 1 1G-2G-3G-4G-5G 不解释,看图,看看NB-IoT在哪里? 2 NB-IoT标准化历程 3GPP NB-IoT的标准化始于20 ...

  7. 设计模式C++学习笔记之六(Facade门面模式)

      Facade门面模式,也是比较常用的一种模式,基本上所有软件系统中都会用到. GOF 在<设计模式>一书中给出如下定义:为子系统中的一组接口提供一个一致的界面, Facade 模式定义 ...

  8. webp 图形文件操作工具包 win32 (编译 libwebp-20171228-664c21dd 版本)

    源码下载地址     https://chromium.googlesource.com/webm/libwebp/ 版本                   libwebp-20171228-664 ...

  9. ffmpeg h264 encdoer 速度对比

    h264_qsv frame= 250 fps=0.0 q=-0.0 Lsize= 1401kB time=00:00:10.00 bitrate=1146.8kbits/s speed= 14x l ...

  10. 子元素position:absolute定位之后脱离文档流,怎么使子元素撑开父元素

    纯粹的CSS无法实现.因为position:absolute就是脱离文档流,怎么能让父元素不塌陷呢? 目前想到的只能用js和jquery来实现了,用js获取子元素的高度,赋值给父元素. <!DO ...