用vue实现微信小程序的点餐首页-纯前端效果

一、效果图

图片来源于网络

二、代码

<template><view class="container"><view class="top"><image src="../../static/img/home.png" class="home"></image></view><view class="content"><view class="scroll"><scroll-view scroll-y="auto"><ul class="ul"><li v-for="(item, index) in cakes" :key="index" :class="{ li: true, active_li: index == checkedIndex }" @click="checkedLI(index)">{{ item.name }}</li></ul></scroll-view></view><view class="cake"><view v-for="(item, index) in current_cakes" :key="index"><view v-for="(item2, index2) in item.detail" :key="index2"><view class="item"><view style="display: flex"><image :src="item2.src" class="img_cake"></image><view class="flex_center" style="flex-direction: column; margin-left: 20px"><view>{{ item2.name }}</view><view style="color: #ff5722; font-weight: bold; font-size: 16px">¥{{ item2.money }}</view></view></view><view class="flex_center number"><u-icon name="minus-circle" @click="reduce(index, index2)" size="50" style="margin-right: 10px"></u-icon><span style="font-size: 18px">{{ item2.number }}</span><u-icon name="plus-circle" @click="add(index, index2)" size="50" style="margin-left: 10px"></u-icon></view></view><u-gap height="10" bg-color="#e2e2e2" style="width: 100%"></u-gap></view></view></view></view><view class="bottom"><image src="/static/img/gwc.png" class="gwc_img"></image><view style="display: flex; align-items: center; margin-left: 30px; width: 75%; justify-content: space-between"><view>总计:{{ money }}元,共:{{ number }}件</view><u-button style="margin-right: 10px" type="primary">选好了</u-button></view></view></view>
</template><script>
export default {data() {return {cakes: [{ name: '蛋糕分类', id: '' },{name: '生日蛋糕',id: 'srdg',detail: [{ src: '/static/img/1.png', name: '动物乐园', money: '126', number: 0 },{ src: '/static/img/2.png', name: '森林莓莓', money: '160', number: 0 },{ src: '/static/img/3.png', name: '北海道', money: '178', number: 0 }]},{name: '休闲一刻',id: 'xxyk',detail: [{ src: '/static/img/2.png', name: '森林莓莓', money: '160', number: 0 },{ src: '/static/img/3.png', name: '北海道', money: '178', number: 0 }]}],money: 0,number: 0,checkedIndex: 1,current_cakes: []};},onLoad() {this.current_cakes = [];this.current_cakes.push(this.cakes[this.checkedIndex]);console.log(JSON.stringify(this.current_cakes));},onshow() {console.log('onshow');},methods: {checkedLI(index) {this.checkedIndex = index;this.current_cakes = [];this.current_cakes.push(this.cakes[this.checkedIndex]);},reduce(index, index2) {if (this.cakes[index+1].detail[index2].number > 0) {this.cakes[index+1].detail[index2].number--;this.money -= parseFloat(this.cakes[index+1].detail[index2].money);this.number--;}},add(index, index2) {this.cakes[index+1].detail[index2].number++;this.money += parseFloat(this.cakes[index+1].detail[index2].money);this.number++;}}
};
</script><style lang="less">
.container {display: flex;flex-direction: column;height: 100vh;width: 100%;.top {height: 30%;width: 100%;.home {width: 100%;height: 100%;}}.content {height: 60%;width: 100%;display: grid;grid-template-columns: 1fr 3fr;.scroll {background: #ece9e9;.ul {padding: 10rpx 10rpx;.li {text-align: center;height: 50px;line-height: 50px;}.li:first-child {font-size: 18px;}.active_li {background: #fff;}}}.cake {// display: grid;// grid-template-columns: 2fr 1fr;.item {margin: 10px 5px;display: flex;align-items: center;display: grid;grid-template-columns: 2fr 1fr;}.img_cake {width: 80px;height: 80px;}.flex_center {justify-content: center;display: flex;align-items: center;}.number {}}}.bottom {height: 10%;width: 100%;display: flex;align-items: center;border-top: 1px dashed #ff9800;.gwc_img {width: 80px;height: 80px;}}
}
</style>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/649161.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

安装好IntelliJ IDEA点击无反应,如何解决配置文件不一致导致的启动问题

在我们的开发生涯中&#xff0c;遇到IDE工具出现问题是在所难免的。最令人头疼的莫过于&#xff0c;你的IDEA(IntelliJ IDEA)无法启动&#xff0c;而且没有任何错误提示。这篇文章将详细讲解如何解决IntelliJ IDEA 2023.3.3版本启动失败的问题&#xff0c;这个问题可能也适用于…

Linux的文件系统、软硬链接、动静态库

前要&#xff1a;本次我想给您带来关于 IO 和文件的知识&#xff0c;而文件在本系列中分为内存上的文件和磁盘上的文件。 1.文件概念 1.1.文件读写 在谈及系统接口之前&#xff0c;我们先来从 C 语言的角度来谈及一些前要知识&#xff0c;以辅助我们后续来理解系统 IO。 我们…

三、详解Redis分布式锁Redisson分布式锁

一、什么是分布式锁&#xff1f; 在传统的java进程中&#xff0c;我们常常用Synchronized三、详解Synchronized-CSDN博客或者ReentrantLock五、详解ReentrantLock-CSDN博客来对临界区进行加锁,防止多个线程之间并行访问,导致数据读写异常。但是这种锁的粒度仅限于当前jvm中&am…

淘宝/天猫API:电商卖家的数据之源

淘宝/天猫API是电商卖家的数据之源&#xff0c;它提供了丰富的功能和数据&#xff0c;帮助卖家更好地管理自己的店铺和业务。通过淘宝/天猫API&#xff0c;卖家可以获取商品信息、订单信息、用户信息等数据&#xff0c;并对这些数据进行处理、分析和利用&#xff0c;以提高自己…

LeetCode.2859. 计算 K 置位下标对应元素的和

题目 题目链接 分析 这道题的题意很明确。就是求每一个下标的二进制中1的个数为k的下标所对应的元素值之和。 Java 中有 库函数 Integer.bitCount(num)&#xff0c;这个函数的返回值就是 num 中 1 的个数。 代码 class Solution {public int sumIndicesWithKSetBits(List…

<网络安全>《7 网络资产测绘和脆弱性管理系统》

1 概念 互联网资产通常大致分为Web类和设备类。Web类包括网站、APP、微信小程序&#xff1b;设备类包括路由器、交换机、网关、防火墙、WAF等。这些信息资产暴露在互联网上的信息包括IP地址、域名、端口、中间件、应用、技术架构等。通常包括且不限于在用、试用和停用的IP地址…

服务器常遇的响应状态码和应对处理

在互联网交互中&#xff0c;服务器返回的状态码是我们理解和处理请求结果的重要依据。了解这些状态码&#xff0c;可以帮助我们更好地诊断问题、优化服务&#xff0c;以及提供更稳定、更高效的用户体验。 以下是一些常见的服务器响应状态码及其处理方法&#xff1a; 状态码 5…

uniapp状态管理Vuex介绍及vuex核心概念

状态管理Vuex Vuex 是什么&#xff1f; Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式。它采用集中式存储管理应用的所有组件的状态&#xff0c;并以相应的规则保证状态以一种可预测的方式发生变化。 uni-app 内置了 Vuex 什么是“状态管理模式”&#xff1f; <!…

讲清楚浅拷贝和深拷贝

先放出实现浅拷贝和深拷贝的一些方法(直接食用)&#xff1a; 1.浅拷贝&#xff1a; 浅拷贝在拷贝对象的时候&#xff0c;对于对象最外一层实现的是普通的值拷贝&#xff0c;对于对象里面的对象是浅拷贝&#xff0c;只复制地址不复制地址对应的值。 /* 方法1.1&#xff1a;扩…

英特尔正式发布OpenVINO™ 2023.3版本

2024年1月24日&#xff0c;英特尔正式发布了OpenVINO™ 2023.3版本&#xff08;Release Notes for Intel Distribution of OpenVINO Toolkit 2023.3&#xff09;。OpenVINO™是英特尔针对自家硬件平台开发的一套深度学习工具库&#xff0c;包含推断库&#xff0c;模型优化等等一…

决策树的基本构建流程

决策树的基本构建流程 决策树的本质是挖掘有效的分类规则&#xff0c;然后以树的形式呈现。 这里有两个重点&#xff1a; 有效的分类规则&#xff1b;树的形式。 有效的分类规则&#xff1a;叶子节点纯度越高越好&#xff0c;就像我们分红豆和黄豆一样&#xff0c;我们当然…

【Java基础】聊聊你不知道的注解那些事

在实际的开发中&#xff0c;我们大量使用了注解&#xff0c;无论是spring、还是本身jdk提供的&#xff0c;注解都是围绕一个java程序员的开发生活&#xff0c;所以本篇主要介绍注解相关的概念、理论、实践。 定义注解 注解和异常非常相似&#xff0c;都可以自定义&#xff0c…

如何在html5中的canvas绘制文本自动换行?

在这篇文章中我们讲解了怎么解决canvas绘图过程中,drawText的换行问题,先看一个大家平时在canvas绘制文本都会遇到的问题: 一个150*100的canvas画布,加个边框明显边界 <canvas id="canvas" style="border:solid 1px darkgoldenrod;" width="2…

ubuntuNginx反向代理和负载均衡

配置两台服务器确保nginx启动并且可以访问 配置nginx代理服务器 可以选择直接安装或者编译安装nginx rootubuntu:~# apt install libgd-dev #安装依赖 rootubuntu:~# apt update rootubuntu:~# apt install libpcre3 libpcre3-dev rootubuntu:~# apt-get install openssl…

前端代码审查(Code Review)---具体实践规范会持续更新

前端代码审查&#xff08;Code Review&#xff09; 针对目录结构、SCSS规范、JS规范、Vue规范 可参照官方给出的风格指南&#xff08;Code Review&#xff09; 具体实践规范 1、POST/PUT/DELETE 请求按钮需要添加 loading 状态&#xff0c;防止重复提交。 建议使用 Element UI…

jQuery遍历(其他遍历)

1、.add&#xff08;&#xff09;: 添加元素到匹配的元素集合 例一&#xff1a; <script> $(document).ready(function(){ $("div").add("p").css("background-color","red") }) </script…

前端canvas项目实战——简历制作网站(二)——右侧属性栏(颜色)

目录 前言一、效果展示二、实现步骤1. 实现一个自定义的选色板2. 创建属性工厂&#xff0c;为每个对象定制属性3. 为canvas对象注册监听器&#xff0c;点击不同对象时更新属性列表 三、Show u the code后记 前言 上一篇博文中&#xff0c;我们实现了左侧工具栏&#xff0c;通过…

kubernetes实战教程:kubernetes简介

kubernetes实战教程:kubernetes简介 简介 官网:https://kubernetes.io/zh-cn/ 一款生产级别的容器编排系统,也成为k8s,用于自动部署,扩展和管理容器化应用的开源系统.Google在2014年开源了kubernetes(后续就用k8s来代替了)这个项目.k8s建立在Google大规模运行生产工作负载十几…

解决vue 2.6通过花生壳ddsn(frp内网穿透)实时开发报错Invalid Host header和websocket

请先核对自己的vue版本&#xff0c;我的是2.6.14&#xff0c;其他版本未测试 起因 这两天在维护一个基于高德显示多个目标&#xff08;门店&#xff09;位置的项目&#xff0c;由于高德要求定位必须使用https服务&#xff0c;遂在本地无法获取到定位坐标信息&#xff0c;于是…

当一个json存在id 和_id 的时候,使用JSONObject.parseObject进行序列号操作,映射错误

FastJson默认会将Java对象中的下划线风格的字段名转换为驼峰风格的属性名。如果你想保留原始的下划线风格的字段名&#xff0c;可以在对应的字段上添加JSONField注解&#xff0c;并设置其name属性为下划线风格的字段名。 {"hasExtraBed":0,"hasWindow":2,&…