uni-app封装input组件用于登录

组件

<template>
	<view>
		<view class="uni-form-item uni-column">
			<input class="my-uni-input" @blur="replaceInput" v-model="changeValue"  :placeholder="placer" />
		</view>
	</view>	
	
</template>

<script>
export default {
	data() {
		return {
			changeValue:""
		};
	},
	props:{
		placer:{
			type:String
		}
	},
	
	methods:{
		replaceInput(){
			this.$emit('myblur',[this.changeValue])
		}
	}
}
</script>

<style>
.my-uni-input{
	margin: 10rpx  auto;
	width: 700rpx;
	height: 80rpx;
	border:none;
	border-bottom:1px solid #CCCCCC;
	/* text-indent: 20rpx; 不兼容小程序*/
	padding-left: 20rpx;
	}
</style>

使用

<my-input @myblur="myblur" placer="请输入账号"></my-input>
<my-input @myblur="myblur" placer="请输入密码"></my-input>

import aa  from "../../components/search.vue"//引入

components:{
    "my-input":aa
},
methods:{
  myblur(messarr){
    console.log("父组件接受到的值",messarr  )
  }
}
封装这个组件input,主要运用了vue中的父传子。和子传父。
父传子,props
子传父,this.$emit()
@blur="replaceInput" 失去焦点。
双向数据绑定和vue是一样的哈

posted @ 2020-04-19 17:02  何人陪我共长生  阅读(3991)  评论(5编辑  收藏  举报