【样式】input 输入框 和 选择框,增加,删除

效果图

在这里插入图片描述
uview

<template>
	<view class="addbox">
			
			
			<view class="order bgf u-m-b-200">
				<view class="common_title u-p-b-30">
					<text></text> 商品清单
				</view>
				<view class="shangpinbox u-m-b-20" v-for="(item,i) in list" :key="i">
					<view class="flex_rowreverse" @click.stop="closeFun(i)">
						<image src="@/static/images/close.png" mode="" class="u-w-32 u-h-32"></image>
					</view>
					
					<view class="u-p-x-30 u-p-t-20 u-p-b-20 flex_align_center" @click="showFun(i)">
						<view class="u-w-150 u-color-666">品牌:</view>
							<view class="xuanzebox p u-border-b flex_spacebetween  u-w-480 " >
								<view class="u-w-400 u-color-input" v-if="item.v1">{{ item.v1 }}</view>
								<view class="u-w-400 u-color-placeholder" v-else>请选择品牌</view>
								<image src="@/static/images/down2.png" mode="" class="u-w-20 u-h-10"></image>
							</view>
					</view>
					
					<view class="u-p-x-30  u-p-b-20 flex_align_center" @click="pinleiShowFun(i)">
						<view class="u-w-150  u-color-666">品类:</view>
							<view class="xuanzebox p u-border-b flex_spacebetween  u-w-480" >
								<view class="u-w-400 u-color-input" v-if="item.v2">{{ item.v2 }}</view>
								<view class="u-w-400 u-color-placeholder" v-else>请选择品类</view>
								<image src="@/static/images/down2.png" mode="" class="u-w-20 u-h-10"></image>
							</view>
					</view>
					
					<view class="u-p-x-30 u-p-b-20 flex_align_center" @click="shangpinShowFun(i)">
						<view class="u-w-150 u-color-666">商品名称:</view>
							<view class="xuanzebox p u-border-b flex_spacebetween  u-w-480  " >
								<view class="u-w-400 u-color-input" v-if="item.v3">{{ item.v3 }}</view>
								<view class="u-w-400 u-color-placeholder" v-else>请选择商品</view>
								<image src="@/static/images/down2.png" mode="" class="u-w-20 u-h-10"></image>
							</view>
					</view>
					
					<view class="u-p-x-30 u-p-b-20 flex_align_center">
						<view class="u-w-150 u-color-666">售价:</view>
							<view class="xuanzebox flex_spacebetween  u-border-b u-w-480" >
								 <text></text>
								 <u--input
								    placeholder="请输入商品价格"
								    border="none"
								    v-model="item.val"
								  >
									</u--input>
							</view>
					</view>
				</view>
				<view class="flex_rowreverse" @click="addFun">
					<view class="zengjia">+增加</view>
				</view>
			</view>
			
			
			
			<view class="u-bottombox flex_spacebetween">
				<view>合计总价: <text class="u-color-FF8 weight u-f-s-30">90.00</text>  </view>
				<view class="btn_common btn">选好了,下一步</view>
			</view>
			
			<!-- 品牌 -->
			<u-picker
				:show="show" 
				:columns="columns"  
				keyName="label" 
				closeOnClickOverlay 
				@confirm='confirm' 
				@cancel='show = false'
				@close='show = false'>
			</u-picker>
			<!-- 品类 -->
			<u-picker
				:show="pinleiShow" 
				:columns="pinleiColumns"  
				keyName="label" 
				closeOnClickOverlay 
				@confirm='pinleiConfirm' 
				@cancel='pinleiShow = false'
				@close='pinleiShow = false'>
			</u-picker>
			<!-- 商品名称 -->
			<u-picker
				:show="shangpinShow" 
				:columns="shangpinColumns"  
				keyName="label" 
				closeOnClickOverlay 
				@confirm='shangpinConfirm' 
				@cancel='shangpinShow = false'
				@close='shangpinShow = false'>
			</u-picker>
	</view>
</template>

<script>
	//import xxx from '@/components/xxx/index.vue'
	// import {
	//   xxx
	//  } from "@/api/index/user.js"
	export default {
		components: {},
		data() {
			return {
				value:'',
				date: [],
				info:{
						 siteAddress: '',
				},
				
				list:[
					{v1:'',v2:'',v3:'',val:''},
					{v1:'',v2:'',v3:'',val:''},
				],
				index:'', // 商品信息的下标
				//  品牌
				show: false,
				columns: [[ 
					{label: '格力',id:0},
					{label: '美的',id:1},
				]],
				
				//  品类
				pinleiShow: false,
				pinleiColumns: [[ 
					{label: '格力品类',id:0},
					{label: '美的品类',id:1},
				]],
				//  商品
				shangpinShow: false,
				shangpinColumns: [[ 
					{label: '格力商品',id:0},
					{label: '美的商品',id:1},
				]],
			
			}
		},
		onLoad(option) {},
		methods:{
	
				// 点击品牌
				showFun(i){
					this.show = true;
					this.index = i;
				},
				// 点击品类
				pinleiShowFun(i){
					this.pinleiShow = true;
					this.index = i;
				},
				// 点击商品
				shangpinShowFun(i){
					this.shangpinShow = true;
					this.index = i;
				},
				// 品牌
				confirm(e) {
					this.list[this.index].v1 = e.value[0].label; 
					this.show = false;
				},
				// 品类
				pinleiConfirm(e) {
					this.list[this.index].v2 = e.value[0].label; 
					this.pinleiShow = false;
				},
				// 商品名称
				shangpinConfirm(e) {
					this.list[this.index].v3 = e.value[0].label; 
					this.shangpinShow = false;
				},
				// 增加
				addFun(){
					this.list.push({
							v1:'',
							v2:'',
							v3:'',
							val:''
					});
				},
				// 删除
				closeFun(i){
					this.list.splice(i,1);
				}
		
		},
	}
</script>
<style lang='scss'>
	page {
		background: #AAAAAA;
	}
</style>
<style lang='scss' scoped>
.btn_common{
	color: #fff;
	text-align: center;
	width: 630rpx;
	height: 88rpx;
	line-height: 88rpx;
	background: #508FF9;
	border-radius: 44rpx;
}
	.addbox{
		
		.order{
			margin-bottom: 16rpx;
			padding: 30rpx;
			box-sizing: border-box;
			.pickerbox{
				box-sizing: border-box;
			}
			.xuanzebox{
				box-sizing: border-box;
				font-size: 30rpx;
				padding: 12rpx 18rpx;
			}
			.xuanzebox.p{
				padding-left:48rpx !important;
			}
		}
		
		.shangpinbox{
			width: 690rpx;
			height: 430rpx;
			background: #F6F6F6;
			border-radius: 10rpx;
		}
		.zengjia{
			width: 130rpx;
			height: 60rpx;
			background: #508FF9;
			border-radius: 10rpx;
			font-size: 30rpx;
			color: #FFFFFF;
			line-height: 60rpx;
			text-align: center;
		}
		
			.u-bottombox{
				box-sizing: border-box;
				position: fixed;
				bottom:0rpx;
				z-index:1009;
				width: 750rpx;
				height: 100rpx;
				background: #FFFFFF;
				box-shadow: 0rpx -2rpx 6rpx 0rpx rgba(212,212,212,0.3);
				padding:0 30rpx;
				.btn{
					width: 250rpx;
					height: 76rpx;
					line-height: 76rpx;
					background: #508FF9;
					border-radius: 38rpx;
					font-size: 30rpx;
					color: #FFFFFF;
				}
			}
	}

.bgf{
	background-color: #fff;
}
.u-m-b-200{
	margin-bottom:200rpx;
}
.u-m-b-20{
	margin-bottom:20rpx;
}
.u-p-b-30{
	padding-bottom:30rpx;
}
.flex_rowreverse{
	display: flex;
	flex-direction: row-reverse;
}
.flex_align_center{
	display: flex;
	align-items: center;
}
.flex_spacebetween{
	display:flex; 
	align-items:center;
	justify-content:space-between;
}
.u-w-480{
	width:480rpx;
}
.u-w-400{
	width:400rpx;
}
.u-w-150{
	width:150rpx;
}
.u-w-20{
	width:20rpx;
}
.u-w-32{
	width:32rpx;
}
.u-h-32{
	height:32rpx;
}
.u-h-10{
	height:10rpx;
}
.u-p-x-30{
	padding-left:30rpx;
	padding-right:30rpx;
}
.u-p-t-20{
padding-top:20rpx;
}
.u-color-666{
	color: #666;
}
// placeholder颜色
.u-color-placeholder{
	color:#c0c4cc;
}
// input 选中的颜色
.u-color-input{
	color: #303133;
}
.u-color-FF8{
	color: #FF8A00;
}
.u-border-b{
	border-bottom: 2rpx solid #E5E5E5;
}
.weight{
	font-weight: 500;
}
/* 标题 */
.common_title{
	font-size: 30rpx;
	font-weight: 500;
	color: #333333;
	display: flex;
	align-items: center;
}
.common_title text{
	width: 5rpx;
	height: 30rpx;
	background: #508FF9;
	border-radius: 3rpx;
	margin-right: 20rpx;
	color: #508FF9;
}

</style>```

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值