2026-10-16 13:07:56 +08:00

花魁短剧管理后台

从 jha-1045-hgdjnet-admin 复制的 Vue 2 / Element UI 管理后台,项目名为 hkdj-web-admin。保留源项目的业务页面、API 和动态权限路由,包括用户、账号角色、媒资库、视频、短剧、导航、应用、商品、交易记录及系统管理。

本地开发

使用 Node.js 22.17.1 和 npm 10。已提供 .nvmrc、.tool-versions,使用 nvm 时执行:

nvm use
npm ci
npm run dev

默认地址为 http://localhost:9999。修改端口可使用 npm run dev -- --port 10000。

项目沿用 Vue CLI 3 / Webpack 4,开发与构建命令通过 scripts/vue-cli.js 选择运行时,并按需使用 OpenSSL 兼容参数。如果终端仍在使用 Node 12/14,脚本会使用 nvm 或 asdf 中已安装的项目 Node 22.17.1,不改变全局默认版本;未安装时会提示执行 nvm install && nvm use。安装依赖仍需先切换到 Node 22。

样式通过 Dart Sass 编译;未使用的旧 element-theme CLI 已移除,避免安装原生 node-sass。.npmrc 为旧依赖启用 legacy-peer-deps,依赖版本记录在 package-lock.json。

接口配置

项目 App ID 统一为 JHA-4001,在 src/store/modules/app.js 中配置;后台请求的 app-id 请求头、上传及媒资管理参数共用该值。

开发代理暂沿用源项目服务。可在未纳入版本控制的 .env.development.local 中配置:

VUE_APP_API_TARGET=https://your-admin-api.example.com
VUE_APP_MEDIA_TARGET=https://your-media-api.example.com
VUE_APP_FILE_TARGET=https://your-file-api.example.com
  • /api/web:默认 https://91av-ht.80sygtm.com,由 VUE_APP_API_TARGET 覆盖。
  • /media/web:默认跟随 API 代理,由 VUE_APP_MEDIA_TARGET 覆盖。
  • /file/web:默认 http://ts.bbaazz.me,由 VUE_APP_FILE_TARGET 覆盖。

生产请求保留 /api/web、/media/web 等相对路径,由部署服务器配置反向代理。花魁后台的新接口和部署域名尚未提供。

构建与检查

npm run build:prod
npm run build:stage
npm run lint
npm run test:unit

npm run build 等同于生产构建,产物位于 dist/。Lint 和单元测试命令沿用源项目。

全局名称在 src/settings.js 中设置,登录页、侧栏及浏览器标题共用“花魁短剧管理系统”。

资源直接复用同目录 ../hkdj-web/public/static/ 中的现有文件:

后台资源 来源 用途
src/assets/logo.png logo_icon.png 登录页、侧栏和默认头像
public/logo.png favicon.png PNG 浏览器图标
public/favicon.svg favicon.svg SVG 浏览器图标
public/favicon.ico favicon.ico ICO 浏览器图标

发布脚本

waiwangceshifu.sh 和 zhengshi.sh 保留构建、打包、上传与运行远端脚本的流程。旧项目服务器和目录已移除;运行前必须显式配置以下变量:

export DEPLOY_HOST=your-server.example.com
export DEPLOY_USER=deploy
export DEPLOY_PORT=22
export DEPLOY_DIR=/srv/hkdj-web-admin
export DEPLOY_SCRIPT=/srv/hkdj-web-admin/deploy.sh
bash waiwangceshifu.sh
# 正式环境请配置对应的目标后执行 bash zhengshi.sh

目标目录需已存在,DEPLOY_SCRIPT 使用远端脚本绝对路径。

S
Description
No description provided
Readme
963 KiB
Languages
Vue 77.2%
JavaScript 15.3%
SCSS 3.8%
CSS 3.6%