位置: IT常识 - 正文

Vue项目实战——【基于 Vue3.x + Vant UI】实现一个多功能记账本(开发导航栏及公共部分)(vuecli项目实战)

编辑:rootadmin
Vue项目实战——【基于 Vue3.x + Vant UI】实现一个多功能记账本(开发导航栏及公共部分) 基于 Vue3.x + Vant UI 的多功能记账本(三)文章目录基于 Vue3.x + Vant UI 的多功能记账本(三)项目演示开发导航栏1、底部导航栏2、测试底部导航栏3、公共头部写到最后(附源码)系列内容参考链接基于 Vue3.x + Vant UI 的多功能记账本(一)项目演示,涉及知识点基于 Vue3.x + Vant UI 的多功能记账本(二)搭建开发环境项目演示

推荐整理分享Vue项目实战——【基于 Vue3.x + Vant UI】实现一个多功能记账本(开发导航栏及公共部分)(vuecli项目实战),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:vuecli项目实战,vue做项目的流程,vue实例完整项目源码,vuecli项目实战,vue项目实例,vuejs项目实战,vue做项目的流程,vue项目实战教程,内容如对您有帮助,希望把文章链接给更多的朋友!

Vue3 + Vant UI_多功能记账本

开发导航栏1、底部导航栏

components 文件夹下,创建 NavBar.vue 组件

NavBar.vue

详细内容请看代码和注释van-tabbar-item 为标签栏

<template> <van-tabbar v-model="active"> <!-- 三个导航,通过 link 方法切换相应路径对应的页面 --> <van-tabbar-item icon="notes-o" @click="link('/home')" >明细</van-tabbar-item > <van-tabbar-item icon="bar-chart-o" @click="link('/data')" >统计</van-tabbar-item > <van-tabbar-item icon="user-o" @click="link('/user')">我的</van-tabbar-item> </van-tabbar></template><script>import { ref } from "vue";import { useRouter } from "vue-router";export default { name: "NavBar", props: { msg: String, // 限制 msg 的类型为字符串 }, // 相当于 vue2.x 的 beforeCreate 和 created setup() { // 使用路由 const router = useRouter(); const active = ref(0); // 路由跳转 const link = (path) => { router.push({ path }); }; return { active, link, }; },};</script>

Data.vue

<template>统计</template><script>export default { name: "Data",};</script>

User.vue

<template>个人中心</template><script>export default { name: "User",};</script>

在 src/router/inedx.js 将这三个页面给定对应的路径

// 用的是 hash 路由,不需要后端支持import { createRouter, createWebHashHistory } from "vue-router";import Home from '../views/Home.vue'import Data from '../views/Data.vue'import User from '../views/User.vue'// 创建路由实例const router = createRouter({ history: createWebHashHistory(), // hash 模式 routes: [ { path: "/", component: Home }, { path: "/home", component: Home }, { path: "/data", component: Data }, { path: "/user", component: User }, ]})// 抛出路由实例export default router

在 App.vue 中引入 NavBar 组件

App.vue

<template> <router-view /> <NavBar /></template><script>import Home from "./views/Home.vue";import NavBar from "./components/NavBar.vue";export default { name: "App", components: { Home, NavBar, },};</script>

Vant UI 的新增组件,需要在 main.js 文件中引入

main.js

import { createApp } from 'vue'import { Button, Tabbar, TabbarItem, Form, Field, Icon, NavBar } from "vant";import "lib-flexible/flexible";import App from './App.vue'import router from './router'import "vant/lib/index.css"; // 全局引入样式import './index.css'// 创建实例const app = createApp(App)// 注册组件 => 按需注册app.use(router);app.use(Tabbar);app.use(TabbarItem);app.use(Form);app.use(Field);app.use(Button); // 注册组件app.use(Icon);app.use(NavBar);// 注册路由app.use(router)app.mount('#app')

此时,yarn dev,打开浏览器可以看到…

2、测试底部导航栏Vue项目实战——【基于 Vue3.x + Vant UI】实现一个多功能记账本(开发导航栏及公共部分)(vuecli项目实战)

./src/views 文件夹下新建一个 Login.vue 组件

Login.vue

<template>登录注册</template><script>export default { name: "Auth",};</script>

在 ./src/router/index.js 文件中添加以下路由(导入和配置)

import Login from '../views/Login.vue'...{ path: '/login', component: Login}...

在 User.vue 中添加跳转到登录注册的路由

User.vue

<template> <Header title="个人中心" /> 个人中心 <router-link to="/login">前往登录注册</router-link></template><script>import Header from "../components/Header.vue";export default { name: "User", components: { Header },};</script>

3、公共头部

./components 文件夹中创建 Header.vue 文件

Header.vue

公共头部,详细内容看代码和注释<template> <!-- 占位标签,给的高度和 NavBar 组件一样高,这样就能将顶部撑开,不会让页面有一部分隐藏在 NavBar 后面 --> <div class="block"></div> <!-- title 通过变量的形式从外部传入,固定定位定位到页面顶部 --> <!-- left-text:返回标志,left-arrow:箭头标志 --> <van-nav-bar class="header" @click-left="back" :title="title" left-text="返回" left-arrow > <template #right> <!-- iconfont 的字体图标 --> <i class="iconfont more">...</i> </template> </van-nav-bar></template><script>import { useRouter } from "vue-router";export default { name: "Header", // 传入的 title 变量 props: { title: { type: String, default: "", }, }, setup() { const router = useRouter(); // 点击返回时,返回上一级 const back = () => { router.back(); }; return { back, }; },};</script><style lang="less" scoped>.block { width: 100%; height: 46px;}.header { position: fixed; top: 0; left: 0; width: 100%; .more { font-size: 20px; margin-bottom: 15px; }}</style>

导入头部组件并使用,title 是传给 Header.vue 的名字

Data.vue

<template> <Header title="统计" /> 统计</template><script>import Header from "../components/Header.vue";export default { name: "Data", components: { Header },};</script>

Home.vue

<template> <Header title="明细" /> 明细</template><script>import Header from "../components/Header.vue";export default { name: "Home", components: { Header },};</script>

User.vue

<template> <Header title="个人中心" /> 个人中心</template><script>import Header from "../components/Header.vue";export default { name: "User", components: { Header },};</script>

写到最后(附源码)

看到这么好的项目,是不是有种想自己做出来的冲动?

如果有,那么说明你非常的想提升自己,想检验自己这段时间的学习成果,这个项目绝对是你的 不二选择

心动不如行动

那么接下来,一起从0搭建,开始我们基于 Vue3.x + Vant UI 的项目之旅吧~

源码放在了下方的微信公众号里【回复:记账本】即可

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

上一篇:Apifox:详细使用教程,带你轻松拿捏(api使用方法)

下一篇:Vue开发实例(11)之el-menu实现左侧菜单导航(vue实战开发项目视频)

  • 网络营销推广软文小技巧(网络营销推广软件机构)

    网络营销推广软文小技巧(网络营销推广软件机构)

  • 黑鲨4spro怎么录屏(黑鲨4spro怎么录屏高清)

    黑鲨4spro怎么录屏(黑鲨4spro怎么录屏高清)

  • 苹果复制快捷键(苹果复制快捷键在哪里)

    苹果复制快捷键(苹果复制快捷键在哪里)

  • 麒麟820相当于骁龙什么处理器(麒麟820相当于骁龙多少处理器)

    麒麟820相当于骁龙什么处理器(麒麟820相当于骁龙多少处理器)

  • 手机自带录屏在哪里找 (手机自带录屏在哪里设置华为)

    手机自带录屏在哪里找 (手机自带录屏在哪里设置华为)

  • 显示器主要组成是什么(显示器主要组成成分)

    显示器主要组成是什么(显示器主要组成成分)

  • 华为手机nova7怎么截屏(华为手机NOVA7怎样关闭实时屏保)

    华为手机nova7怎么截屏(华为手机NOVA7怎样关闭实时屏保)

  • 没有开启拼小圈别人能看到我买的东西吗(没有开启拼小圈为什么会推送好友)

    没有开启拼小圈别人能看到我买的东西吗(没有开启拼小圈为什么会推送好友)

  • 路由器防火墙要不要开(路由器防火墙开启好还是禁用好)

    路由器防火墙要不要开(路由器防火墙开启好还是禁用好)

  • 淘宝4心要多少好评(淘宝4心要多少个好评)

    淘宝4心要多少好评(淘宝4心要多少个好评)

  • 数据线2a和3a的区别(数据线2a和3a哪个充电快)

    数据线2a和3a的区别(数据线2a和3a哪个充电快)

  • 宋体三号加粗怎么弄(宋体3号加粗)

    宋体三号加粗怎么弄(宋体3号加粗)

  • 淘宝资金冻结需要多久(淘宝冻结资金一般冻结多久)

    淘宝资金冻结需要多久(淘宝冻结资金一般冻结多久)

  • 爱奇艺怎么看自己的会员有几个人在用(爱奇艺怎么看自己的账号和密码)

    爱奇艺怎么看自己的会员有几个人在用(爱奇艺怎么看自己的账号和密码)

  • 退出家人共享对方有提示吗(退出家庭共享之后相册里的照片)

    退出家人共享对方有提示吗(退出家庭共享之后相册里的照片)

  • 手机微信置顶语怎么设置(咋弄微信置顶语)

    手机微信置顶语怎么设置(咋弄微信置顶语)

  • 抖音发视频如何添加定位(抖音发视频如何赚钱)

    抖音发视频如何添加定位(抖音发视频如何赚钱)

  • iphone11港版和国行区别(港版iphone11和国版有什么区别)

    iphone11港版和国行区别(港版iphone11和国版有什么区别)

  • 荣耀20i能否分屏(华为荣耀20i能不能分屏)

    荣耀20i能否分屏(华为荣耀20i能不能分屏)

  • 广东iptv怎么连接wifi(广东iptv怎么连接蓝牙)

    广东iptv怎么连接wifi(广东iptv怎么连接蓝牙)

  • designedby是vivo几(designed by vivo是什么型号)

    designedby是vivo几(designed by vivo是什么型号)

  • 企鹅电竞怎么弄悬浮窗(企鹅电竞怎么弄嘻哈天王)

    企鹅电竞怎么弄悬浮窗(企鹅电竞怎么弄嘻哈天王)

  • oppoFindx屏幕有多大(oppofindx多大)

    oppoFindx屏幕有多大(oppofindx多大)

  • 怎样看华为手机是不是全网通(怎样看华为手机的出厂日期)

    怎样看华为手机是不是全网通(怎样看华为手机的出厂日期)

  • web前端三大主流框架(web前端三大主流框架vue)

    web前端三大主流框架(web前端三大主流框架vue)

  • 解决Dede5.6联动类型更改排序数字的BUG

    解决Dede5.6联动类型更改排序数字的BUG

  • 小规模纳税人税控系统
  • 简易征收适用哪条法律
  • 短期借款现金流
  • 资产负债表所有者权益和利润表关系
  • 个税反推税前工资速算
  • 资本公积账务
  • 小规模纳税人季报还是月报?
  • 费用摊销怎么做
  • 跨国避税
  • 写字楼出租可以给租户注册吗
  • 在建工程非应税项目有哪些?
  • 生产企业报关单金额大于发票金额
  • 折价收购股权会计分录
  • 业务招待费税前扣除规定
  • 价税合计啥意思
  • 小规模纳税人金额
  • 食堂费用计入应付职工薪酬吗
  • 固定资产和在建工程占所有者权益的占比
  • 增值税做账做错怎么处理
  • 土地增值税规定中央空调属于房屋建筑物吗
  • 股东投资设备一定要评估吗
  • 怎样接收电子承兑汇票流程视频
  • 自营出口与委托代理哪个划算
  • 质押已至票据到期日
  • 企业老板机票怎么报销记账
  • 本月计提增值税的金额是怎么得来的
  • 计提水电费用什么科目
  • 企业支付个人劳务费需要发票吗
  • win10无法上网,显示灰色的飞行模式
  • 所得税到底按会计分录吗
  • 什么样的企业是好企业,什么样的员工是好员工
  • directx/?
  • 目前超频最高几ghz
  • nodejs安装教程
  • 单位未足额缴纳社保可以补交几年
  • php分片上传文件
  • 汇算清缴的表在哪里
  • 一维卷积padding
  • thinkphp接收ajax数据
  • yolov5tiny
  • 增值税直接减征的情形
  • union ll
  • 旅游公司差额征税如何开票
  • 哪些费用计入管理费用
  • 私车公用维修费用谁出
  • sql2000日志清理
  • 换出长期股权投资的会计处理
  • 新准则下交易性金融债券
  • 汇兑损益在哪个表
  • 捐赠纳税调整额怎么算
  • 个人转让不动产交印花税吗
  • 已认证抵扣的发票如何做账
  • 登记账簿遇到的问题及解决
  • 储备基金是什么
  • 废品损失是什么要素
  • 电梯广告租赁属于什么服务
  • 季报企业所得税弥补亏损数怎么填
  • 预缴的附加税月末结转吗
  • 金蝶制造费用明细如何查询
  • 购进货物取得
  • 金融企业借款费用计入
  • windows modules installer占用磁盘高
  • win8宽带连接
  • red hat7.6
  • centos做服务器
  • cocos2d游戏源码
  • 详解16型人格
  • 对于不回微信的人,这样做,尽显高情商!
  • vue源码是用什么写的
  • linux链接ln
  • 把下一行的数字去掉
  • android基本控件使用方法
  • jquery.ztree中文api
  • jq easyui
  • python爬虫类
  • 深圳市国家税务局电话
  • 内蒙古包头税务局客服电话
  • 总公司与分公司签订承包协议
  • 车船税发票丢了怎么补办
  • 北京市朝阳区地税
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设