# 前言

目前工作中使用 vue2 的居多,为了巩固 vue3 的基础和要时刻保持自己学习的习惯,打算基于 vue3 与 serverless 开发一个全栈开源项目 ( 资源管理项目 )

前后端采用前后分离的交互模式,后端采用 nest9 框架,使用 RESTful 风格接口,数据库暂定 mysqlredis (mysql 可能替换为 mongodb )

前端主要采用 vue3 + naiveui 来开发

# 项目简介

这是一个小项目,包含用户登录,各种类型的文件上传及管理,通过权限机制分配文件给不同的用户,在其他平台可以方便选取文件复制 url 或下载

文件的存储暂时只使用 七牛云 平台,上传使用七牛 SDK, 文件类型打算分为以下几类,其中图片,pdf, 视频和音频可以采用 html5 页面预览,而其他文件则只能下载

  1. 图片
  2. PDF
  3. 视频 (mp4)
  4. 音频 (mp3)
  5. word
  6. ppt
  7. excel
  8. zip
  9. 其他

文件和用户支持细粒度权限划分,即可以给用户分配文件或文件夹

用户权限划分为管理员与普通用户,管理员可以给普通用户分配文件,普通用户只能管理自己的文件

文件权限为读,写,修改三种

# 创建 VUE3 项目

安装 VUE3 项目很简单,在选择的时候一并安装 vue-routerpinia

h
$ npm init vue@latest
$ cd <your-project-name>
$ npm install
$ npm run dev