位置: IT常识 - 正文

用vue3+vant4开发的简单小众电商购物项目模板(纯前端)(vant移动端开发)

编辑:rootadmin
用vue3+vant4开发的简单小众电商购物项目模板(纯前端) 简单录制如下

推荐整理分享用vue3+vant4开发的简单小众电商购物项目模板(纯前端)(vant移动端开发),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:vant 开发app,vue中引入vant组件,vant移动端开发,vue3 vant,vue中引入vant组件,vue-vant,vue中引入vant组件,vue-vant,内容如对您有帮助,希望把文章链接给更多的朋友!

主要练习下界面和交互,顺带简单了解下 vue3 语法。

简单截图如下

首页

首页-猜你喜欢

用vue3+vant4开发的简单小众电商购物项目模板(纯前端)(vant移动端开发)

分类

购物车

个人页面

部分文件代码

底部导航文件

<template> <div class="nav" id="myNav"> <div class="nav-item-box" v-for="(item,index) in itemArr" :key="index" > <!-- :class="item.title == '书架' ? 'bookshelf_nav' : ''" --> <div class="nav-item" :style="name == item.navName ? 'color:rgb(255,63,63)' : ''" @click="to(item.navName)" > <div class="icon"> <i :class="item.icon"></i> </div> <div class="title">{{item.title}}</div> </div> </div> </div></template><script>/* eslint-disable */import { defineComponent, ref, computed } from 'vue'import { useRouter,useRoute } from 'vue-router'export default defineComponent({ setup() { let itemArr = ref([ { title: '首页', navName: 'Index', icon: 'iconfont icon-shouye' }, { title: '分类', navName: 'Classification', icon: 'iconfont icon-fenlei'}, { title: '购物车', navName: 'ShoppingCart', icon: 'iconfont icon-gouwuche' }, { title: '我的', navName: 'Mine', icon: 'iconfont icon-wode' }, ]) let router = useRouter() // 全局路由对象 let route = useRoute() // 当前路由对象 let name = computed(() =>{ return route.name }) let to = (val) =>{ if (val != name.value){ router.replace({ name: val }) } } return { itemArr, name, to } }})</script>

分类功能模块

<div class="content_container"> <!-- 左侧 --> <div class="left_box"> <div v-for="(item,index) in leftList" :key="index"> <div :class="curNav.index == item.index ? 'active' : '' " class="left_box_title" @click="changeIndex(index)">{{item.title}}</div> </div> </div> <!-- 右侧 --> <div> <van-list v-if="curNav.index ==0" class="right_box" v-model:loading="loading" :finished="finished" finished-text="没有更多了" @load="onLoad" > <div v-for="item in list" :key="item" class="right_good"> <div class="img "><img class="img" :src="item.src" alt=""></div> <div class="name">{{item.title}}</div> </div> </van-list> <div v-if="curNav.index !=0"> <van-empty image="error" description="暂无数据" /> </div> </div></div><script>/* eslint-disable */import { defineComponent, ref } from 'vue'import { showToast } from 'vant';import navCom from '@/components/onlineRetailer/MyNav.vue'export default defineComponent({ name: 'headerCom', components: { navCom }, setup (props,ctx) { let value = ref('') let active = ref(0); // let onChange = (index) => showToast(`标签名 ${index + 1}`); // let onChange = (index) => { // switch(index){ // case 0: showToast('1111111111111') // break; // case 1: showToast('222222222222') // break; // default: showToast('6666666666666') // } // } let leftList = ref([ { index: 0, title: "好货推荐" }, { index: 1, title: "彩妆个护" }, { index: 2, title: "食品饮料" }, { index: 3, title: "鞋履箱包" }, { index: 4, title: "母婴用品" }, { index: 5, title: "生活家居" } ]) let rightList = ref([ { title: '麦菜' }, { title: '芥兰' } ]) let list = ref([ { title: '坚定不移', src: require('@/assets/newProducts/2.jpg')}, { title: '壮志凌云', src: require('@/assets/newProducts/1.jpg')}, { title: '奋发图强', src: require('@/assets/newProducts/3.jpg')}, { title: '坚持不懈', src: require('@/assets/newProducts/4.jpg')}, { title: '朝气蓬勃', src: require('@/assets/newProducts/5.jpg')}, { title: '力争上游', src: require('@/assets/newProducts/6.jpg')}, { title: '坚定不移', src: require('@/assets/newProducts/2.jpg')}, { title: '壮志凌云', src: require('@/assets/newProducts/1.jpg')}, ]); let loading = ref(false); let finished = ref(false); let curNav = ref({ index: 0, }) let changeIndex = (index) =>{ curNav.value.index = index } let onLoad = () => { // 异步更新数据 // setTimeout 仅做示例,真实场景中一般为 ajax 请求 // setTimeout(() => { // for (let i = 0; i < 6; i++) { // list.value.push(list.value.length + 1); // } // 加载状态结束 loading.value = false; console.log('list.value.length',list.value.length) // 数据全部加载完成 if (list.value.length >= 20) { finished.value = true; } // }, 1000); }; return { value, active, // onChange, leftList, rightList, list, onLoad, loading, finished, curNav, changeIndex } }})</script>

简单记录,(完)😀

本文链接地址:https://www.jiuchutong.com/zhishi/283197.html 转载请保留说明!

上一篇:windows不能打开帮助和支持怎么办(windows不能打开exe文件)

下一篇:Win11 Build 22483预览版ISO官方镜像下载(win11 build 22000.65)

  • 微信网页版屏蔽消息的方法(禁止微信打开网页)

    微信网页版屏蔽消息的方法(禁止微信打开网页)

  • 1474是ipad几(苹果ipad型号a1474是ipad几)

    1474是ipad几(苹果ipad型号a1474是ipad几)

  • 钢化膜的作用(钢化膜的作用是什么)

    钢化膜的作用(钢化膜的作用是什么)

  • 安装office找不到文件(安装office找不到安装源)

    安装office找不到文件(安装office找不到安装源)

  • 魅族root权限关闭教程(魅族手机root权限关闭)

    魅族root权限关闭教程(魅族手机root权限关闭)

  • 被群主踢了还能举报该群(被群主踢了还能进群吗)

    被群主踢了还能举报该群(被群主踢了还能进群吗)

  • 空白页第一页删除不了怎么办(删除第一页空白)

    空白页第一页删除不了怎么办(删除第一页空白)

  • 华为手机安全与隐私在哪里(华为手机安全与隐私里没有地震预警)

    华为手机安全与隐私在哪里(华为手机安全与隐私里没有地震预警)

  • 天猫店发货时间规则(天猫店发货时间哪里设置)

    天猫店发货时间规则(天猫店发货时间哪里设置)

  • 照片最近删除在哪(照片最近删除在哪里开启)

    照片最近删除在哪(照片最近删除在哪里开启)

  • iphone锁屏后频繁亮屏(苹果手机锁屏后自动重启是怎么回事)

    iphone锁屏后频繁亮屏(苹果手机锁屏后自动重启是怎么回事)

  • 荣耀20pro发热烫手怎么回事(华为荣耀20pro容易发烫?)

    荣耀20pro发热烫手怎么回事(华为荣耀20pro容易发烫?)

  • 打电话给别人响一声提示正在通话是为什么(打电话给别人响几声自己挂了)

    打电话给别人响一声提示正在通话是为什么(打电话给别人响几声自己挂了)

  • 苹果七支持无线充电吗(苹果七支持无线充电功能吗)

    苹果七支持无线充电吗(苹果七支持无线充电功能吗)

  • airpodspro港版和国行的区别(airpodspro港版和国行能看出区别吗)

    airpodspro港版和国行的区别(airpodspro港版和国行能看出区别吗)

  • 备忘录哪里能看到字数(备忘录从哪看)

    备忘录哪里能看到字数(备忘录从哪看)

  • 打印照片怎么设置(打印照片怎么设置长和宽)

    打印照片怎么设置(打印照片怎么设置长和宽)

  • ps怎么闭合路径载入选取(ps闭合路径后怎么建立选区)

    ps怎么闭合路径载入选取(ps闭合路径后怎么建立选区)

  • 抖音直播音浪提现比例(抖音直播音浪提现额度)

    抖音直播音浪提现比例(抖音直播音浪提现额度)

  • 天正t20工具栏怎么调出来(天正t20v5.0的工具栏怎么调出来)

    天正t20工具栏怎么调出来(天正t20v5.0的工具栏怎么调出来)

  • 高通骁龙450和660区别(骁龙450跟660哪个好)

    高通骁龙450和660区别(骁龙450跟660哪个好)

  • relme是什么牌(relmev是什么牌子)

    relme是什么牌(relmev是什么牌子)

  • 华为p30应用建议怎么关闭(华为p30应用建议怎么删除)

    华为p30应用建议怎么关闭(华为p30应用建议怎么删除)

  • 自动驾驶数据集(一):KITTI数据集介绍(自动驾驶数据集 mev)

    自动驾驶数据集(一):KITTI数据集介绍(自动驾驶数据集 mev)

  • 计算机视觉项目-实时目标追踪(计算机视觉项目队友只让你打标签是什么意思)

    计算机视觉项目-实时目标追踪(计算机视觉项目队友只让你打标签是什么意思)

  • 没有销项购买税金税盘如何做账
  • 未达起征点增值税申报表怎么填
  • 递延所得税资产账务处理
  • 减资需要交个税吗
  • 非居民纳税人是小规模纳税人
  • 单位出租不动产印花税
  • 中小型企业营业额和从业人数
  • 公司破产债务清偿顺序是怎样的
  • 运输服务的增值税是多少
  • 物业公司银行存款专款专怎么做分录
  • 报表的应付款太大怎么调?
  • 工程前期土地平整的会计分录怎么写?
  • 小型微利企业减按25%计算应纳税所得额
  • 虚开发票的受票企业将会受到什么处罚?
  • 微信红包税前扣除
  • 土地使用税级别划分标准
  • 税务局增项
  • 专用发票可以抵扣吗
  • 抄税和申报是一回事吗
  • 应收账款计提坏账准备是根据什么会计信息质量要求
  • u盘的内存卡怎么装
  • bios读取不出u盘
  • 计提企业所得税费用会计分录
  • win11不显示桌面,但是有文件夹打开的标志是怎么回事
  • 微软 windows11
  • PHP:stream_set_chunk_size()的用法_Stream函数
  • 增值税发票月末怎么账务处理
  • 包工包料工程要交哪些税
  • 固定资产减值准备可以税前扣除吗
  • 门面出租赚钱吗
  • 小企业会计准则调整以前年度费用分录
  • 借款合同印花税怎么做账
  • php获取当前页面
  • electron-vue官网
  • ChatGPT 被大面积封号,到底发生什么了?
  • curl命令上传文件到服务器
  • 发票 技术服务
  • 农药普通发票可以抵扣
  • 金额太小不给开发票
  • 车辆保险费怎么入账
  • python socketio
  • vue获取dom元素的方法
  • 联营企业属于关联实体吗
  • 个体户定额3万需要申报吗
  • 无偿调拨资产怎么提折旧
  • 收到银行承兑汇票计入什么科目
  • 转让无形资产或其他资产
  • 成本类账户期末如有余额在借方
  • 用货物抵债如何入账
  • 应纳税调增调减科目是什么
  • 预付款为什么不能抵消工程款
  • 金税盘年服务费账务处理
  • 一次性伤残就业补助金有时间限制吗
  • 直接人工成本包括管理人员开的工资吗
  • 公司自建房要交房产税吗
  • 年底暂估收入,年初怎么做
  • 营改增后计税依据
  • 什么是企业合并的具体动因之一
  • 银行卡转账怎么撤回转账的钱
  • mysql数据库全量备份
  • xp系统怎么创建本地连接2
  • linux 如何查看
  • win7点关机关不了
  • win8系统打不开exe
  • win8如何进行系统还原
  • 函数里面声明函数
  • cocos2dx4.0教程
  • opengl glu
  • python选择器
  • python中print函数的end参数
  • python输入错了怎么办
  • shell脚本运行linux命令
  • jquery获取document对象
  • linux做ftp
  • socket教程pdf
  • 用nodejs实现三个类,动物基础类(有跑的函数,吃的函数)
  • unity xml读取
  • 技术总结结束语
  • js设计模型
  • 年终奖怎么报个税
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设