cart购物车简单版

<template>
	<view>
		<view class="username">
			登录:<input type="text" v-model="uName"/>
		</view>
		<view class="password">
			密码:<input type="password" v-model="pWd"/>
		</view>
		<button size="default" type="primary" 
			style="color:#ffffff;backgroundColor:#1AAD19;borderColor:#1AAD19" 
			hover-class="is-hover" @click="login">登录</button>
	</view>
</template>

<script>
	export default {
		data() {
			return {
				uName:'',
				pWd:''
			}
		},
		methods: {
			login(){
				if(!this.uName){
					uni.showToast({
						title:'用户名不能为空',
						icon:'error'
					})
					return
				}
				if(!this.pWd){
					uni.showToast({
						title:'密码不能为空',
						icon:'error'
					})
					return
				}
				if(this.uName=='aaa' && this.pWd=='aaa'){
					// var that=this
					uni.switchTab({//跳转到tabbar页面
						url:'/pages/index/index'
					})
					setTimeout(()=>{//延迟计时器
						// uni.$emit('loginOK',{uName:that.uName})
						uni.$emit('loginOK',{uName:this.uName})
					},30)
				}
			}
		}
	}
</script>

<style>

</style>
<template>
	<view class="content">
		<!-- list里的三个index -->
		<view class="cart" v-for="(item,index) in list" :key="index" @longpress="del(index)"><!-- 长按触发事件 -->
		
			<u-checkbox-group><!-- 选中框 -->
				<u-checkbox v-model="item.checked"></u-checkbox><!-- item.checked -->
			</u-checkbox-group>
			
			<image :src="item.url" mode="aspectFit"></image><!-- 图片   item.url-->
			
			<view class="detail"><!-- 三个“详情” -->
				<view class="">{{item.name}}</view><!-- item.name -->
				<view class="">单价:¥{{item.price}}</view><!-- item.price -->
				<view class="">小计:¥{{item.price*item.number}}</view>
			</view>
			
			<u-number-box v-model="item.number" :min="1"></u-number-box><!-- 带加减按钮的数字输入框 item.number-->
		</view>
		
		总价:¥{{total.toFixed(2)}}<!-- 小数点后保持两位 注意这个total-->
		<button type="primary" @click="js">结算</button>
	</view>
</template>

<script>
	export default {
		data() {
			return {
				list:[//list中的5个对象
					{name:'小白鞋',url:'/static/shoe.jpg',price:120,number:1,checked:true},
					{name:'收纳盒',url:'/static/shounahe.jpg',price:80,number:2,checked:false},
					{name:'糖果',url:'/static/sol.jpg',price:10,number:5,checked:false}
				]
			}
		},
		computed:{//计算
			total(){
				var sum=0
				for(var i in this.list){
					var item=this.list[i]
					if(item.checked){
						sum+=item.price*item.number
					}
				}
				return sum
			}
		},
		methods: {//方法
			js(){
				uni.showToast({
					title:'结算成功'
				})
			},
			del(id){
				var that=this
				uni.showModal({
					title: '提示',
					content: '确认删除'+this.list[id].name+'吗?',
					success: function (res) {
						if (res.confirm) {
							that.list.splice(id,1)
						} else if (res.cancel) {
							return
						}
					}
				})
			}
		}
	}
</script>

<style>
	.cart{
		display: flex;
		margin: 10px;
		border-bottom: 1px solid #ccc;
	}
	.cart image{
		width: 200px;
		height: 200px;
		margin: 10px;
	}
	.detail{
		display: flex;
		flex-direction: column;
		flex: 1;
	}
	.detail view:nth-child(2){
		display: flex;
		flex: 1;
		align-items: center;
	}
	.detail view:nth-child(3){
		color: orange;
	}
</style>

以下是一个简易购物车程序的示例,使用文件存储购物车信息: ```python import os def load_cart(): """加载购物车""" if not os.path.exists('cart.txt'): return {} with open('cart.txt', 'r') as f: lines = f.readlines() cart = {} for line in lines: name, price, quantity = line.strip().split(',') cart[name] = {'price': float(price), 'quantity': int(quantity)} return cart def save_cart(cart): """保存购物车""" with open('cart.txt', 'w') as f: for name, info in cart.items(): price = info['price'] quantity = info['quantity'] line = f"{name},{price},{quantity}\n" f.write(line) def print_cart(cart): """打印购物车""" print('购物车:') for name, info in cart.items(): price = info['price'] quantity = info['quantity'] total = price * quantity print(f"{name} x{quantity} ¥{total:.2f}") print() def add_to_cart(cart): """添加商品到购物车""" name = input('请输入商品名称:') if name in cart: print('该商品已经在购物车中') return price = float(input('请输入商品价格:')) quantity = int(input('请输入购买数量:')) cart[name] = {'price': price, 'quantity': quantity} print('已经添加到购物车') def remove_from_cart(cart): """从购物车中删除商品""" name = input('请输入要删除的商品名称:') if name not in cart: print('购物车中没有该商品') return del cart[name] print('已经从购物车中删除') def main(): cart = load_cart() while True: print_cart(cart) print('请选择操作:') print('1. 添加商品到购物车') print('2. 从购物车中删除商品') print('3. 结账') print('4. 退出程序') choice = input() if choice == '1': add_to_cart(cart) save_cart(cart) elif choice == '2': remove_from_cart(cart) save_cart(cart) elif choice == '3': total = 0 for name, info in cart.items(): price = info['price'] quantity = info['quantity'] total += price * quantity print(f'总计:¥{total:.2f}') cart.clear() save_cart(cart) elif choice == '4': break else: print('无效的选项') if __name__ == '__main__': main() ``` 在这个程序中,我们定义了三个函数 `load_cart`、`save_cart` 和 `print_cart`,用于加载购物车、保存购物车和打印购物车。其中,`load_cart` 函数会从文件中加载购物车信息,`save_cart` 函数会将购物车信息保存到文件中,`print_cart` 函数会打印购物车中的商品信息。 在 `main` 函数中,我们循环显示购物车信息,并提供以下操作: 1. 添加商品到购物车 2. 从购物车中删除商品 3. 结账 4. 退出程序 根据用户的选择,我们会调用 `add_to_cart`、`remove_from_cart` 和 `print_cart` 函数来实现相应的功能。其中,`add_to_cart` 函数会从用户输入中读取商品名称、价格和数量,并将商品信息添加到购物车中;`remove_from_cart` 函数会从用户输入中读取要删除的商品名称,并将该商品从购物车中删除。最后,如果用户选择了结账操作,我们会计算购物车中所有商品的总价,并将购物车清空。所有的购物车信息都会保存到文件中,以便下次使用时恢复。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值