创建基础项目

基于vite创建初始模板 选择vue+ts 后期再安装依赖less支持

输入以下命令 回车

yarn create vite

交互中选择 vue ts

项目初始化完成后 安装less 即可支持less

yarn add --dev less

集成必要插件

antd

过程参考官网

vue-router

过程参考官网

给一个简短参考

// src/router.ts

import { createRouter, createWebHistory } from 'vue-router';
import RouteView from '/@/components/route-view.vue'; export default createRouter({
history: createWebHistory(),
routes: [
{
path: '/',
name: 'Layout',
redirect: { name: 'Home' },
component: () => import('/@/components/layout/index.vue'),
children: [
{
name: 'Home',
path: '/home',
component: () => import('/@/views/home/index.vue')
},
{
name: 'System',
path: '/system',
redirect: { name: 'User' },
component: RouteView,
children: [
{
name: 'User',
path: 'user',
component: () => import('/@/views/system/user/index.vue')
},
{
name: 'Menu',
path: 'menu',
component: () => import('/@/views/system/menu/index.vue')
}
]
}
]
},
{
path: '/login',
component: () => import('/@/views/login/index.vue')
}
]
});

pinia

用于全局状态管理 vuex的替代品,参考文档

pinia-plugin-persist

pinia的持久化插件 参考官方文档

api

vue-request、axios、pont、mock

处理接口请求 和 mock

vite-plugin-vue-setup-extend

优雅的写组件名字

<script lang="ts" setup name="demo">
xxx
</script>

form-create

用于表单生成的 这里是官网地址

yarn add @form-create/ant-design-vue@next

配置短路径

vite.config.ts 添加如下代码

...
import { resolve } from 'path'; const pathResolve = (dir: string) => {
return resolve(process.cwd(), ".", dir);
}; export default defineConfig({
plugins: [vue()],
// 以下部分
resolve: {
alias: [
{
find: /\/@\//,
replacement: pathResolve("src") + "/",
},
],
},
});

另外ts可能无法识别path这个node全局内置的环境包:找不到模块“path”或其相应的类型声明

这个时候安装对应的类型包 ts就能识别了

yarn add --dev @types/node

因为本项目是ts项目 所以如上虽然可用 但是ts会编译报错 不识别短路径/@/。因此需求做ts适配。修改ts配置文件 tsconfig.json

{
"compilerOptions": {
...
"baseUrl": ".",
"paths": {
"/@/*": ["src/*"]
}
},
...
}

oh-admin诞生记的更多相关文章

  1. 痞子衡嵌入式:语音处理工具Jays-PySPEECH诞生记 - 索引

    大家好,我是痞子衡,是正经搞技术的痞子.本系列痞子衡给大家介绍的是语音处理工具Jays-PySPEECH诞生. 智能语音交互市场近年来发展迅速,其典型的应用之一智能音箱产品如今已走入千家万户,深受大家 ...

  2. 痞子衡嵌入式:串口调试工具Jays-PyCOM诞生记 - 索引

    大家好,我是痞子衡,是正经搞技术的痞子.本系列痞子衡给大家介绍的是串口调试工具Jays-PyCOM诞生. 串口调试助手是嵌入式开发里非常常用的小工具,市面上有非常多流行的串口调试工具,比如TeraTe ...

  3. chain33 区块链开发框架诞生记

    chain33 诞生记 很多年没有写博客了,应该说,自从2013年开始玩比特币,就没有写过了.这5年来,做了很多事情,也见了很多以前做梦都没有想到过都事情.我做的最开心的事情,也是觉得最有意义的事情, ...

  4. 谷歌Gmail诞生记:十年回首

    美国<时代>周刊网络版今天刊登题为<Gmail诞生记:10年前鲜为人知的故事>(How Gmail Happened: The Inside Story of Its Laun ...

  5. Linux LiveCD 诞生记

    Linux LiveCD 诞生记 650) this.width=650;" onclick='window.open("http://blog.51cto.com/viewpic ...

  6. (转载)JavaScript世界万物诞生记

    一. 无中生有 起初,什么都没有.造物主说:没有东西本身也是一种东西啊,于是就有了null: 现在我们要造点儿东西出来.但是没有原料怎么办?有一个声音说:不是有null嘛?另一个声音说:可是null代 ...

  7. 痞子衡嵌入式:语音处理工具pzh-speech诞生记(2)- 界面构建(wxFormBuilder3.8.0)

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是语音处理工具pzh-py-speech诞生之界面构建. 之前痞子衡设计过一个串口调试助手pzh-py-com,也专门写过一篇关于其界面构 ...

  8. [转载]jQuery诞生记-原理与机制

    by zhangxinxu from http://www.zhangxinxu.com本文地址:http://www.zhangxinxu.com/wordpress/?p=3520 一.看似偶然的 ...

  9. 【Android测试】【随笔】性能采集工具——小松鼠诞生记

    ◆版权声明:本文出自胖喵~的博客,转载必须注明出处. 转载请注明出处:http://www.cnblogs.com/by-dream/p/4945066.html 起因 去年刚加入TX的时候,我便接手 ...

  10. jQuery诞生记-原理与机制

    一.看似偶然的东西实际是必然会发生的 我大学时候在图书馆翻过一本很破旧的书,讲生物理论的,主要内容就是探讨生命的产生是偶然还是必然.里面很多亚里士多德都看不懂的公式计算什么的,还有模拟原始地球环境出现 ...

随机推荐

  1. AIR724UG上电后引脚的默认电平

    使用AIR724UG的引脚作为继电器的控制引脚时,由于上电时引脚的电平有的高,有的低. 在某些场合我们希望GPIO上电默认是低电平,所以我将常用引脚中可用的引脚标注了出来.

  2. MYSQL数据库 MariaDB断电恢复总结

    背景:本次是机房异常断电,导致数据库文件损坏.在数据库自启动之后频繁宕机,在多次尝试以后,总结了一下几种方法,及供参考. 1.mariadb服务器断电重启之后Missing MLOG_CHECKPOI ...

  3. drawcall和batch

    drawcall和batch的概念和区别可以结合冯乐乐书的前端章节和以下i链接达到透彻的理解 正如链接中所讲,batch是比drawcall所指范围更广的概念,包含了drawcall https:// ...

  4. C++数据的共享和保护

    1.函数原型作用域:C++中最小的作用域 ①在函数原型声明时,形参的作用范围就是函数原型作用域. 2.局部作用域/块作用域 3.类作用域 类可以被看做是一组有名成员的集合,类X的成员m具有类作用域,对 ...

  5. 记录一次线上问题排查:JDK序列化问题

    场景简要概述 新加了个字段,然后发版,上线就发现了报错 当时这个问题很简单,其实就是用的是 JDK序列化,当时这个类实现了 Serializable接口,但是没显示定义 serialVersionUI ...

  6. 【记录】Word 2021|编号缩进调整

    版本: Word 2021 专业版 Word编号缩进调整 有时候会觉得word列表的悬挂缩进太大或太小了. 第一步:右键编号的数字-调整列表缩进. 第二步:编辑格式-编号. 第三步:点击更多,选择编号 ...

  7. Flutter适配HarmonyOS 5开发知识地图

    还在为Flutter适配HarmonyOS 5头疼?这份知识地图,用实战解析+高频避坑指南,帮你快速打通跨平台开发任督二脉! ▌为什么这份资源值得你收藏? 分层进阶:从环境搭建→插件开发→性能优化,匹 ...

  8. C#之可访问性约束(可访问性不一致)

    C# 语言中的有些构造要求某个类型至少与某个成员或其他类型具有同样的可访问性 (at least as accessible as).如果 T 的可访问域是 M 可访问域的超集,我们就说类型 T 至少 ...

  9. C#LINQ去掉数组字符串中的指定元素

    例字符串: string s1 = "111,111,111222111,111333111,111"; string del = "111"; 要删除指定元素 ...

  10. GC-QA-RAG 智能问答系统的向量检索

    本章节介绍 GC-QA-RAG 智能问答系统的核心检索技术原理,包括向量化策略.混合检索机制.RRF 融合排序等关键实现细节. 1. 检索流程概述 系统采用典型的 RAG(Retrieval-Augm ...