vue中router的封装+返回键导航模板设置

在H5项目中,为了解决导航组件代码重复和维护问题,本文介绍了如何将导航组件封装到Vue.js的路由中。通过在routerList中设置导航显示、颜色、返回键状态和文本,并利用路由中间件根据store状态动态调整导航。具体步骤包括创建导航组件、在路由中引入和配置、在App.vue中使用,以及在不同环境下的按需加载处理。
摘要由CSDN通过智能技术生成

h5 开发项目中,由于每个页面都有导航组件,即使每个页面都去引用导航组件也会造成代码量大, 不好维护, 代码冗余等问题, 所以就想到直接封装到路由里面, 在路由里面直接设置是否显示导航、改变导航颜色, 改变返回键主题色、及按需修改导航文本

说一下思路

  1. 建立导航返回组件
  2. 在路由routerList 中就直接设置是否显示导航组件、修改主题色、修改文字、是否显示返回键的需求
  3. 通过中间路由根据变量直接引入页面 ,在路由中间键中的beforeEachHandle 方法中根据store 去加载导航显示状态及控制是否显示返回键和文本标题
  4. 在App.vue 中将导航组件引入进去, 页面需要修改导航的文本可以根据store 去设置

一、 首先看router目录
在这里插入图片描述
二、进入正题, 直接上代码

1、将文件都建立好(页面的引入方式是根据环境变量的方式引入)
(1)src 下建立一个页面, 页面中随便写入几个文字方便测试
在这里插入图片描述

(2) routerList 文件下将页面引入进来
注意: 该文件下就直接使用路由中间键将相关代码联系起来
1、 router 文件夹下分别建立import_development、 import_production 文件, 由于是采用的按需加载所以使用了这两个文件(开发环境不需要按需加载, 生成环境需要)
(1)import_development.js 代码

module.exports.importFile = filePath => require(`views/${
     filePath}.vue`).default

(2)import_production.js 代码

module.exports.importFile = filePath => () => import(/* webpackChunkName: "[request]" */ `views/${
     filePath}.vue`)

2、 routerList 文件中将页面引用进来

const {
    importFile } = require(
Vue3是一种用于构建用户界面的JavaScript框架,它具有快速、灵活、可重用等特点。Webpack则是一种JS的打包工具,可以将多个JS文件打成一个JS文件。Vue-RouterVue框架的路由管理器,通过它可以实现前端路由的切换。Axios则是一种基于Promise的 HTTP 库,用于处理前端与后端的数据交互。Vuex则是Vue框架的状态管理工具,将组件的共享状态抽取出来,以集管理,便于开发人员管理。这些技术都是前端开发必不可少的技术,用于优化前端项目的结构,提高开发效率。 在具体的项目开发,为了提高代码的复用性,通常会对这些技术进行进一步的封装。对于Vue-Router,可以将项目的路由进行封装,创建一个Route.js文件,用于统一管理路由。通过这样的封装,可以使得路由的管理更加清晰。 对于Axios,可以通过封装一个API.js文件,将后端接口进行统一管理,减少代码的重复性。在API.js可以封装所有后端接口的请求方法,统一处理请求返回的数据。 对于Vuex,则可以将项目的状态进行封装,写一个store.js文件,用于集管理应用的状态。在store.js可以设置全局数据,方便在各个组件进行访问和修改。同时,也可以将状态的变化通过mutations.js文件封装,以保证数据的可靠性。 最后,使用Webpack进行打包。Webpack可以将多个JS文件打成一个JS文件,减少了请求的次数,提高了页面的加载速度。 综上所述,通过对Vue3、Webpack、Vue-Router、Axios、Vuex等技术的封装,可以提高代码的复用性和可维护性,从而加快项目的开发进度。同时,这些技术的结合还能够为项目提供更好的架构,提升用户的使用体验。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值