uniapp 自定义写底部导航栏

项目的需求是根据用户的权限判断,当前显示哪些菜单。

项目使用uniapp + vue3.0

1 根据前端写的项目目录来判断当前返回的路由是否有相同的,因为是数组所以做了封装函数来判断当前的路由数组。

javascript 复制代码
//函数封装
function resArr(arr1, arr2) {
    const appTabs = [];
    arr1.forEach(v => {
        arr2.forEach(val => {
            if (val.path == v.pagePath) appTabs.push(v);
        });
    });

    return appTabs;
}

2 数组路由当然少不了组件,vue3.0 的组件引入方式修改了,不再使用components ,需要在引入的地方导入组件,

shallowRef:只处理基本数据类型的响应式, 不进行对象的响应式处理,直接使用组件浏览器会报警告

javascript 复制代码
import Order from '@/pages/order/order.vue';


{
        name: shallowRef(Order),
        pagePath: '../order/order',
        iconPath: '/static/tabbar/torder.png',
        selectedIconPath: '/static/tabbar/torder_c.png',
        text: '订单'
    },


 <component :is="data.getItem.name"></component>

3 写底部导航的样式应该很简单了把

相关推荐
用户033307413958 小时前
TypeScript using 与 AsyncDisposableStack:在真实服务端代码中协调多资源清理
前端
web3d5208 小时前
Vue3 地图白屏排查清单:容器、弹窗与 ol-viewport 重复创建
vue.js·gis
daisychey8 小时前
用 Playwright 做多平台内容分发,我踩过的 8 个坑
前端
IT_陈寒9 小时前
为什么你应该学习JavaScript?
前端·人工智能·后端
大龄秃头程序员9 小时前
iOS冷启动监控Demo
前端
光影少年9 小时前
为什么 JavaScript 中 0.1 + 0.2 !== 0.3,如何让其相等?
前端·javascript·算法
掘金酱10 小时前
[稀土掘金 × 火山引擎] AI用量周榜冲刺赛|获奖名单公示
前端·人工智能·后端
泡泡oO10 小时前
“如果你还在用Superpowers,那我不要和你说话”
前端·后端·全栈
维克兜率天10 小时前
趋势过滤:避免被“假突破“反复打脸
前端
8年区块链老兵11 小时前
一篇文章教会你:用区块高度读懂比特币链上的每一笔交易
前端