码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • umi4+vue3开发模板摸索


    why do this

    地址 https://gitee.com/dmhsq/umi4-vue-template
    虽然进公司上班后 用的是react但是我依然有一颗vue的心,哈哈哈
    看umi文档的时候发现有了一条 使用vue,让我这个又喜欢umi又喜欢vue的人感觉非常开心
    在这里插入图片描述
    然后我就去试了,中间出了一些问题,又跑去官方交流反馈群问了下,终于跑起来了
    然后搞出了以下模板,还不够完善,有更新维护我会放到gitee

    模板介绍

    封装好网络请求以及存储 在utils里面

    可以正常部署到服务器
    测试部署 地址 http://mocks.dadandmother.cn/

    这里页面还是umi脚手架创建项目的页面 没有改动

    参考了 umi4的示例 以及umi4Max 这里是基础模板 后面会加入element的样式布局和菜单等等 做一个后台模板

    关于vue的一些配置 在 app.tsx

    目前只用了 element 和 pinia 如果需要在 app.tsx 配置 这里可看umi4文档https://umijs.org/docs/guides/use-vue

    // 在此处写相当于常规vue项目的一些配置
    export async function onAppCreated({ app }: any) {
      // console.log('onAppCreated', app);
      const pinia = createPinia();
      app.use(ElementPlus);
      app.use(pinia);
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    路由

    写在 .umirc.ts 中 参考文档https://umijs.org/docs/guides/use-vue

    路由拦截

    // 此处可处理路由
    export async function onMounted({ app, router }: any) {
      // console.log('onMounted', app, router);
      // 此处写路由拦截
      router.beforeEach((to: any, from: any, next: Function) => {
        // console.log('router beforeEach', to, from);
        // console.log(router);
        document.title = to.meta.title ?? '系统';
        next();
        // document.title = to
      });
      // or
      // router.beforeEach((to: any, from: any) => {
      //   console.log('router beforeEach', to, from);
      // });
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16

    项目配置参考umi4

    这个太多 看文档配置

    在 .umirc.ts中
    文档 https://umijs.org/docs/tutorials/getting-started

    整体布局

    在 layouts/index.vue 中

    网络请求

    在utils中的request.ts文件 导出使用即可

    关于mock

    这里 可以使用 umi提供的 mock 即写在mock文件夹 也可以使用 第三方平台远程mock

    在这里插入图片描述
    这里我用的是代理 以及自己的 mock平台(暂时不开源)

    灵活性

    你可以全局关闭或者开启 ,也可以在网络请求时候加入参数 如下

    在这里插入图片描述
    这个true 即为 单项开启 为false为单项关闭 优先级大于全局

    类型定义

    写在
    在这里插入图片描述

    配置端口号

    在这里插入图片描述

    注意

    如果有时候报错关于umi 的 建议删除 .umi 这个文件夹 (缓存)

    其它

    umi4支持vite 但是还是先观望 等稳定了再切换

    模板

    此模板持续更新维护,因为自己要用… 哈哈哈

  • 相关阅读:
    【软件测试】APP 上架指南:iOS App Store 首次上架被拒原因分析与解决方案
    Leetcode-2 两数相加
    Kotlin 常用语法糖记录
    粘包和半包问题及解决办法
    OpenCV-Python学习(4)—— OpenCV 图像对象的创建与赋值
    ssh连win10报错:Permission denied (publickey,keyboard-interactive).
    JSP如何使用request获取当前访问者的真实IP呢?
    windows系统使用cmd执行.py文件并且传入参数 | 神经网络模型训练 | 主打能用就行
    kafka 之 本地部署单机版
    hexo博客搭建
  • 原文地址:https://blog.csdn.net/qq_42027681/article/details/125458756
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号