uni-app组件总结一:input和textarea,以及textarea显示在最上面的解决方案

input

html

	<view class="cu-form-group ">
		<view class="title">姓名</view>
		<input placeholder="请输入姓名" type="text" :value="item.name" @input="nameInput"/>
		//或者
		//<input placeholder="请输入姓名" type="text" v-model="item.name"/>
	</view>

data

item:{
		name:"123"
}

js

nameInput(e) {
	this.item.name = e.detail.value;
},

效果
在这里插入图片描述

在这里插入图片描述
比如type=idcard时在安卓手机上
在这里插入图片描述
type=number
在这里插入图片描述

在这里插入图片描述

textarea

html

	<view class="cu-form-group ">
		<view class="title">描述</view>
		<textarea placeholder="请输入" type="text" :value="item.text" @input="textInput"/>
		//或者
		//<textarea placeholder="请输入" type="text" v-model="item.text"/>
	</view>

data

item:{
		text:"123"
}

js

textInput(e) {
	this.item.text= e.detail.value;
},

效果
在这里插入图片描述

textarea组件在微信小程序属于原生组件处于最高级 (苹果和开发工具上是正常的,安卓是一直显示在最上面)

解决方法一 cover-view

应用场景:显示在固定定位上方
官方文档的描述:

cover-view:可覆盖的原生组件包括 map、video、canvas、camera、live-player、live-pusher

只支持嵌套 cover-view、cover-image,可在 cover-view 中使用 button。组件属性的长度单位默认为px,2.4.0起支持传入单位(rpx/px)。

把应该覆盖在textarea上的组件用cover-view表示
我没试过网上说是可以的,在这里只是记录一下

解决方法二 亲测

应用场景:显示模态框上面
描述解决方法:当模态框显示时,textarae 隐藏 text显示

		<view class="cu-form-group align-start">
			<view class="title">描述</view>
			<!-- //modalName=='DialogModal'表示显示模态框 -->
			<text v-if="modalName=='DialogModal'" class="textarea">
				<text v-if="item.text">{{item.text}}</text>
				<text class="text-grey" v-else>请输入</text>
			</text>
			<textarea v-else maxlength="-1" v-model="item.text" placeholder="请输入"></textarea>
		</view>

css

	//这个样式是我在网页上找到跟textarea 效果一样,这样才不会有视觉差
	.textarea{
		margin: 32rpx 0 30rpx;
		height: 4.6em;
		width: 100%;
		line-height: 1.2em;
		-webkit-box-flex: 1;
		-webkit-flex: 1;
		flex: 1;
		font-size: 28rpx;
		padding: 0;
	}
  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值