陪伴是最深情的告白,AdminWork框架升级更新摘要(一)

简介: 陪伴是最深情的告白,AdminWork框架升级更新摘要(一)

前言

Hello,大家好久不见,最近由于事情比较多没有及时的给大家分享AdminWork框架的最新进展,实在抱歉。

虽然没有及时和大家分享项目的进度,但项目也一直在不断的更新,在得到大家的反馈问题或者一些好的建议的时候我也会第一时间进行修复和优化。争取给大家更好的使用体验和带来更高效的开发。

那下面就和大家分享一下最近AdminWork各个版本做了哪些比较重要的优化和功能调整吧~~


ArcoWork版

「ArcoWork」版本主要的技术骨架:

  • Vue3
  • Typescript
  • ArcoDesign
  • Pinia

ArcoDesign 简介

Arco Design 是由字节跳动UED-火山引擎和架构前端字节云团队联合推出的企业级设计系统。

Arco Design 拥有系统的设计规范和资源,同时依据规范提供了丰富的原子组件,覆盖了React、Vue、Mobile 等框架和方向。在原子组件基础上也提供了丰富的定制化工具,包括风格配置平台、物料平台等,也提供了资源平台包括 IconBox、设计资源库、Arco Pro 最佳实践等。

旨在帮助设计师与开发者解放双手,提升工作效率。更高效、高质量的打造符合业务规范的中后台应用。

「——arco.design官网」

升级内容

(v: 2.0.3)

  • 升级:升级 arco-design 版本到 v2.37.1
  • 新增:适配 上下 分栏
  • 升级:升级 arco-design 版本到 v2.35.2

(v: 2.0.1)

  • 升级:升级 arco-design 版本到 v2.32.0
  • 新增:添加自定义 axios 的 request interceptor,方便使用 Pinia。

(v: 2.0.0)

  • 升级:升级 arco-design 版本到 v2.26.0
  • 优化:优化 main.ts 执行流程,优化代码

(v: 1.1.3)

  • 升级:升级 arco-design 版本到 v2.26.0
  • 优化:优化 main.ts 执行流程,优化代码

(v: 1.1.2)

  • 升级:网络操作 api post、get 支持泛型功能
  • 新增:新增 FormRender 组件,方便在构建表单项的时候,可以通过 render方法自定义元素
  • 调整:调整 TableHeader.vue 中的组件布局样式
  • 修复:修复 Humburger.vue 组件中 展开和闭合图标指示器显示不正确的 bug
  • 修复:修复 演示页面部分 bug
  • 新增:新增 jsx 编写组件的功能
 plugins: [
     ...
      vueJsx(),
     ...
    ],

新增:FormRender 中 添加常用的 表单元素 快捷渲染方式,如下:

import {
    Checkbox,
    Input,
    InputNumber,
    Option,
    Select,
    SelectOptionData,
    SelectProps,
  } from '@arco-design/web-vue'
  import { AllowedComponentProps, h, Ref } from 'vue'
  export default function Render(props: any) {
    if (!props || !props.formItem) {
      throw new Error('miss formItem prop and check it')
    }
    return props.render(props.formItem, h)
  }
  export function renderInput(value: Ref<string>, props = {}) {
    return (
      <Input
        onUpdate:modelValue={(newValue) => {
          value.value = newValue
        }}
        modelValue={value.value}
        {...props}
      />
    )
  }
  ...

(v: 1.1.1)

  • 优化:优化 Tabbar 按钮样式
  • 升级:更改 Vue Admin Work P 名字为 Admin Work Pro
  • 重要升级:菜单可以从本地路由中过滤
  • 完全从 本地 views 中动态加载
  • 完全从 本地 路由表 中动态加载
  • 本地 views 和 本地 路由表 两种方式的结合。注:本地 路由表方式的 优先级要高于 本地 views的方式。(本项目默认的使用方式)
  • 之前的菜单都是根据接口数据从本地 views 中动态加载,但在某些场景下或者某些人的开发习惯,可能需要根据本地定义中的路由表(如:src/router/index.ts 中的 asyncRoutes)中动态加载。如果接口中的菜单配置项和本地路由表中的配置项重复,优先使用本地路由表中的配置项。
  • 在根据权限获取到菜单列表的时候,就可以根据以下三种方式加载路由:
  • 优化:把 src/router/index.ts中的路由分类
  • constantRoutes 存放一些系统页面,如loginredirect404403500
  • asyncRoutes 存放一些需要根据权限加载的路由
  • extraRoutes 存放一些由一级页面进入二级及多级页面,不需要在菜单中展示,同时也不需要根据权限加载的路由。如:列表详情页面
  • 新增:在菜单数据结构中新增routeName属性,方便在有些时候可以自己命令菜单路由名称
  • 在定义路由的时候,需要指定 name 属性,项目目前使用的方式是根据 menuUrl 获取最后的路径为 name 属性值,如 /system/department,就会以 departmentname属性。
  • 但在某些场景下,可能需要自定义 name,这个时候就可以根据 routeName 配置项来指定,如指定为 my-department。当没有配置此配置项时,还是会使用根据 menuUrl 获取最后的路径为 name属性值。
  • 新增:在菜单数据结构中新增localFilePath属性,方便在有些时候可以自己自定义 vue 文件路径
  • 在动态加载路由的时候,系统会根据 menuUrlsrc/views 中动态加载 .vue 文件。
  • 但在某些场景下,可能会根据自定义的 pathsrc/views 中动态加载 .vue 文件。
  • 注:localFilePath 在配置的时候要以views为参考,可以配置成,如:system/department 或者 ./system/department 或者 /system/department。切记:不要加文件后缀名.vue
  • 新增:在菜单数据结构中新增isRootPath属性,可以自定义 / 路径跳转的页面地址
  • 如果没有指定任何路由为 isRootPath,则会以根据权限获取的菜单中的第一个元素的 children 属性的第一个元素的 menuUrl 指定为 / 路由的 redirect属性值
  • 如果指定了多个路由配置项 isRootPathtrue,则会以按顺序获取第一个路由
  • 要指定到某个具体的叶子路由中,如果某个路由下面有 children 属性并且不为空,则判定该路由不是叶子路由
  • 在动态加载路由的时候,会增加一个 path/ 的路由,在访问 http://localhost:3000/ 的时候会加载此配置路由,此路由不方便指定具体的 component,但可以指定一个 redirect 属性,这样就可以动态配置此路由的跳转页面
  • 如果对某个具体的路由指定 isRootPathtrue 的时候,会把此路由的 path或者menuUrl 指定为 / 路由的 redirect属性值
  • 新增:defaultRoutes 为了在一开始对接项目的时候,后端人员还没有准备好菜单接口,导致前端开发者不能进入主页面。如果设置获取 菜单 的地址为空时,会加载此 defaultRoutes,否则会加载接口中的菜单数据
  • 在刚开始对接正式后台接口的时候,后端人员还没有准备好菜单接口,导致前端开发者不能进入主页面。这个时候可以先把 根据角色获取菜单数据的接口 置为 '',对应本项目中就是,src/api/url.ts中的以下地址
  // 在有接口的时候,要配置成真实的接口
  export const getMenuListByRoleId = '/getMenusByRoleId'
  // 在没有接口时候,可以先配置成 '' ,等后台人员提供了接口再进行修改成真实的接口
  export const getMenuListByRoleId = ''

系统在获取 getMenuListByRoleId 地址的时候,发现不是真实的地址,就会加载 defaultRoutes 中的路由,以能进入系统的主页面,进行其它的开发工作


重要更新

以上是 ArcoWork 版本的最新升级内容,内容比较多,下面重点说一下比较重要的更新版本如下:

  • v: 1.1.1
  • v: 2.0.3 在 v2.0.3 版本中新增了一种布局方式

自2.0.3版本起,ArcoWork增加了上下分栏布局模式。也是应很多人的需求,预览如下:

4edc953e2c684bbe819ffa954c899c08.png4edc953e2c684bbe819ffa954c899c08.png

现在代码地址已经全部开源在github 和 gitee 上了,如果您还不知道如何获取代码,请关注《知码前端》公众号,回复数字1,即可获得下载地址。


写在最后

由于本篇文章过长,所以其它版本的升级内容放到下一篇进行讲解。

相关文章
|
6天前
|
搜索推荐 物联网 vr&ar
"电子书VS纸质书:一场跨越时空的阅读盛宴,你站哪队?揭秘数字与纸墨的终极对决,哪种阅读方式才是你的真爱?"
【8月更文挑战第14天】电子书与纸质书作为知识传播的载体,各具特色。电子书凭借便携性、个性化设置及互动功能受到欢迎;而纸质书则以其独特的感官体验、收藏价值和促进深度阅读的特点保持着吸引力。随着技术进步,两者正逐步融合,如电子书提供沉浸式体验,纸质书引入智能元素,共同丰富阅读世界。
16 0
|
人工智能 算法 JavaScript
既Facebook道歉AI误将黑人标记为灵长类动物后,推荐GitHub 上 7 个 yyds 算法项目
既Facebook道歉AI误将黑人标记为灵长类动物后,推荐GitHub 上 7 个 yyds 算法项目
117 1
既Facebook道歉AI误将黑人标记为灵长类动物后,推荐GitHub 上 7 个 yyds 算法项目
|
机器学习/深度学习 存储 人工智能
AutoGPT star量破10万,这是首篇系统介绍自主智能体的文章(2)
AutoGPT star量破10万,这是首篇系统介绍自主智能体的文章
174 0
|
机器学习/深度学习 人工智能 PyTorch
AutoGPT star量破10万,这是首篇系统介绍自主智能体的文章(1)
AutoGPT star量破10万,这是首篇系统介绍自主智能体的文章
115 0
|
Web App开发 人工智能 监控
AutoGPT star量破10万,这是首篇系统介绍自主智能体的文章(3)
AutoGPT star量破10万,这是首篇系统介绍自主智能体的文章
150 0
|
机器学习/深度学习 人工智能 自然语言处理
阳过→阳康,数据里的时代侧影;谷歌慌了!看各公司如何应对ChatGPT;两份优质AI年报;本周技术高光时刻 | ShowMeAI每周通讯 #003-12.24
这是ShowMeAI每周通讯的第3期。本期内容关键词:新冠、ChatGPT、2022 AI 报告、腾讯·绝悟、阿里·AliceMind、小红书·全站智投、OpenAI·Point-E、Google·CALM、Wayve·MILE、AI2·MemPrompt、Stanford x MosaicML·PubMed GPT、腾讯全员大会、特斯拉裁员、图森未来裁员、AI 应用与工具大全。
515 0
阳过→阳康,数据里的时代侧影;谷歌慌了!看各公司如何应对ChatGPT;两份优质AI年报;本周技术高光时刻 | ShowMeAI每周通讯 #003-12.24
|
存储 缓存 小程序
献给所有技术内容创作者~猿创聚合助手小程序开发难点解析
我重新开始了原创技术内容创作,至今在掘金发表了原创文章60篇,47.7w阅读,1.5w赞。
339 0
献给所有技术内容创作者~猿创聚合助手小程序开发难点解析
|
机器学习/深度学习 人工智能 Oracle
懒人福音!谷歌AI整理房间、收盘子、叠罗汉,样样拿手!
谷歌AI研究院的研究人员提出了 「Transporter Network」,用全新方式实现3D理解,可以让机械臂更好更快的进行操作。
140 0
懒人福音!谷歌AI整理房间、收盘子、叠罗汉,样样拿手!
|
Linux 开发者 Windows
BT发表线上影音软体Popcorn Time,新旧媒体又要头痛了!
随着一系列原创剧,特别是《纸牌屋》获得的成功,Netflix 走在挑战传统电视的大道上。这自然触动相关利益者的神经。最近,Comcast 开始对Netlfix 发起了攻势。作为一家内容提供商,Netflix 向消费者提供服务的时候,必须通过Comcast 这样的ISP业者 ,但Comcast 同时也是一个竞争者,因为它是电视和电影巨头NBCUniversal 的母公司。在这种情况下,Comcast 具有显而易见的优势地位。
189 0
BT发表线上影音软体Popcorn Time,新旧媒体又要头痛了!
|
机器学习/深度学习 人工智能 算法
李飞飞明星课程CS231n翻新!增加transfomer等内容,视频PPT全部放出
李飞飞明星课程CS231n翻新!增加transfomer等内容,视频PPT全部放出
252 0