7 Star 67 Fork 86

ujcms / ujcms-cp

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
README.md 2.95 KB
一键复制 编辑 原始数据 按行查看 历史
ujcms 提交于 2023-04-05 23:12 . v6.0.2 发布

UJCMS-CP

UJCMS-CP 是 UJCMS 的后台前端项目。使用 Vue 3、Vite、TypeScript、ElementPlus、TailwindCSS、VueRouter、VueI18n 开发。

需要启动UJCMS主项目才可以使用,不可单独运行(无法访问后端接口)。

如不需要修改UJCMS的后台界面,则不必启动此项目。UJCMS/src/main/webapp/cp目录已包含本项目编译后的代码,直接运行UJCMS主项目即可。

搭建步骤

  • 使用 vscode 开发工具。
  • 安装 node 环境。Node 14.18+ / 16+ 版本。
  • 使用淘宝 npm 镜像。
  • 安装依赖,执行:npm install
  • 启动程序,执行:npm run dev
  • 访问:http://localhost:9520
  • 用户名:admin,密码:password。

修改后台标识

  • 修改.env文件中的VITE_APP_TITLE=UJCMS配置,可改变登录页、后台左侧导航等处的UJCMS标识。
  • 替换/public/favicon.png图片,可改变浏览器标签页上显示的图标。
  • 修改/src/layout/components/AppSidebar/Logo.vue文件中的svg图标,可改变后台左侧导航处 LOGO 图标。

编译及部署

  • 执行:npm run build
  • 编译后的程序在/dist目录。
  • /dist目录里的文件拷贝至主项目 UJCMS 的/src/main/webapp/cp目录下(先将原目录下的文件删除)。

前后端分开部署

通常前端和后端程序部署到同一个应用,即将前端程序复制到主项目 UJCMS 的/cp目录。以演示站点为例,后端接口地址为https://demo.ujcms.com/api,前端访问地址则为https://demo.ujcms.com/cp/。这样可以避免跨域问题,是最简单的部署方式。

如果需要将前后端部署到不同域名或端口,如后端接口地址为http://www.example.com/api,前端地址为http://www.frontend.com。由于前后端域名不同,前端直接访问后端接口会出现跨域错误。这时需要在前端服务器部署反向代理,解决跨域问题。以nginx为例:

# 代理 api 接口
location /api {
    proxy_pass http://www.example.com;
}
# 代理上传文件
location /uploads {
    proxy_pass http://www.example.com;
}

开发模式启动时,情况也类似,后端接口地址为http://localhost:8080/api,前端地址为http://localhost:9520。前后端端口不同,也属于跨域。但前端开发在状态启动时,会自动开启代理,相关配置在vite.config.ts文件中。类似以下代码:

proxy: {
    '/api': {
        target: env.VITE_PROXY,
        changeOrigin: true,
    },
    '/uploads': {
        target: env.VITE_PROXY,
        changeOrigin: true,
    },
},

菜单和角色权限配置

如果进行二次开发,需新增功能,可在/src/router/index.ts文件中配置菜单。

并可在/src/data.ts文件中配置权限,配置好的权限会在角色管理 - 权限设置中的功能权限中显示。

配置内容:

export function getPermsTreeData(): any[] {
  const {
    global: { t },
  } = i18n;
  const perms = [
    ...
  ]
}
TypeScript
1
https://gitee.com/ujcms/ujcms-cp.git
git@gitee.com:ujcms/ujcms-cp.git
ujcms
ujcms-cp
ujcms-cp
master

搜索帮助