2023年企业级前端脚手架从0到1构建分享

201 阅读6分钟

在湖南长沙,虽然很多互联网公司,我曾经在麓谷片区混迹4年多,大小的公司也进不少,但长沙的技术水平还是真的太low。

2022年四月,在大家都认为是别人家的公司的,湖南草花互动科技有限公司辞职了(在湖南的游戏行业还是比较出名的公司),进入了湖南惠农网,同时也在这个时候,开源了一个前端脚手架工具。

watt-cli 企业级前端脚手架

项目已开源,欢迎大家点star watt-cli: 来吧,大家一起重复造轮子

如有啥需要交流的,欢迎大家进入 discord 进行交流 discord.gg/Jfequt7pkH

不是代码不能外泄,也不是怕别人抄,主要是真正能减少工作量,提高效率

那么一个优秀的企业脚手架,需要提供什么功能:

  • (1)快速创建项目的框架,并集成开发功能
  • (2)批量处理静态文件,加速业务开发
  • (3)快速在项目中创建路由页面
  • (4)创建模板项目
  • (5)统计脚手架使用情况
  • (6)还有更多...

安装教程

全局安装命令

npm i watt-cli -g

使用方法

  • 查看当前版本
  • 首次使用需注册
  • 上传静态文件到CDN
  • 根据模板创建项目
  • 统计脚手架使用情况
1.  查看当前版本
这个没有什么好讲的,就是看看你当前环境使用的工具是否是最新版,可能更多高级功能须升级到对应的版本才能使用

2.  首次使用需注册
为什么?因为工具的使用情况需要验证你的身份,怕你做坏事不承认,同时后续会提供一些免费的功能,须进行身份绑定才能使用,如 免费图床,CDN静态文件

3.  上传静态文件到CDN
前端最基本的操作,为了首屏快出,能上CDN的都应该上,作为企业级应用,最开始就得把这个脚手架架好

4.  创建模板项目
前端脚手架基本操作,但是要使用好,就要备好模板项目的目录,文件,以及使用需使用的包,包括请求的封装等,做到很好还需要自己去想哦

5.  统计脚手架使用情况

6.  还有更多...

以下命令在命令行工具中执行命令

  • 查看当前版本
watt -V

watt --version
  • 注册
watt register

此操作会提示输入用户名 为什么要先注册,因为这个脚手架集成了cdn文件上传,为了后面管理CDN文件,需要统计文件上传的作者是谁,也防止恶意上传过多文件不利于对象存储桶的管理。

  • 上传文件
watt upload -h  #可以查看帮助

watt upload -f test.js -p demo #上传当前目录文件 ./test.js 到 /demo

watt upload -d test -p demo  # 上传当前目录下的 test 文件夹内所有文件到 /demo

watt upload -c -p test #上传当前目录下所有文件 到 /test

watt u -f ./lib/uploader/banner_bg.jpg -p demo  # 假使这个目录的文件存在 ./lib/uploader/banner_bg.jpg


上传成功后,会在命令行返回这个路径https://static.jsvue.cn/demo/banner_bg.jpg,复制到项目中直接使用即可,(使用了回源,流量费用,请先 tinyPng 网站里压缩一下,钱包扛不住)

图片上传过程中自动转成webp的格式,上传两种模式,在浏览器判断是否支持webp 使用不同的链接地址

七牛自动转换,环境不支持兜底: 如果图片使用webp模式,加速加载可以使用参数 ?imageView2/0/format/webp

参数说明

参数名全称参数说明
-c-cwd是否当前目录
-d-dir整个目录上传
-f-file单文件路径上传
-p-prefix上传到OSS,上传后文件前缀(文件夹名可叠加‘/’)
  • 创建模板项目
watt init name  #项目名, 只能是英文,规则跟目录的命名规则一致,因为就是生成好的项目目录

# 提示覆盖

# package里的一些动态命名

-$> watt init ms
? 请选择您要创建的项目类型: 中台系统(vue3 + ant-design + vuex + router)
? 是否覆盖原有的文件夹 是
? 项目名称 ms
? 项目title
? 项目描述
✔ 下载模板...
项目初始化完成✅

cd name

npm install

npm run serve

模板说明

会在命令行提示显示 模板列表

  • 旧版中台系统(vue + iview + vuex + router)
  • 中台系统(vue3 + ant-design + vuex + router)
  • H5活动单页(vue3 + ant-design + vuex)
  • 前端框架文档(vue + vuepress)
  • 静态网站或博客(nuxt2 + generate) ...

旧版中台系统(vue + iview + vuex + router)

中台系统(vue3 + ant-design + vuex + router)

开源板模

2022年更新 vue3 版本,使用 ant-design 2.0 (暂不维护) 此模板主要是快速搭建中台管理系统 集成了 自已研发的 中台组件库,当然你可以在项目中去掉,如果方便可以移步文档

  • 统计脚手架使用情况 主要用于团队效率提升数据收集使用,

示例

=====

上传单图片

watt u -f ./lib/uploader/banner_bg.jpg -p demo

  • 上传单图片到 xx 项目下

如果想分来管理好源上的图片,而且便于维护,我们想 A 项目的静态文件夹 A\assets\images 这种,那要怎么上传呢

watt upload -f ./oss_upload/banner.jpg -p a/assets/images

  • 上传当前目录下的所有图片到 xx 项目下

watt upload -d -c -p a/assets

=======

创建模板

watt init ms

ms 为项目的名称,也是当前目录下新建的文件夹,创建完成后 进入项目,安装依赖

cd ms && npm i npm install 可以简写成 npm i ,如果没有错误的话,使用命令启动项目

npm run serve 还记原创建项目配置的启动域名吗,默认 test.jsvue.cn ,为什么要使用域名调式,在采用统一登录系统里,会对登录会话增加 用户凭证的所在域名,如果是ip不好写凭证,所以建议使用域名,当然也可以使用IP,但需要手动改回,

【注意】 使用域名,请在本地hosts文件指向中增加, 本地域名解析。不然启动时会报错

统计使用情况

watt usage (同样可以用watt use简命令)会出现输入统计的时间段,为了查询问题,尽可以不要查询所有数据,

  • beginDate 起始查询时间 会自动补到 00:00:00.000
  • endDate 结事查询时间 会自动补到 23:59:59.999
C:\Users\Administrator>watt use
? 请输入统计起始日期: 2023-03-01
? 请输入统计结束日期: 2023-03-18
{ upload: 4 }

C:\Users\Administrator>

特别注意

  • v0.0.6 因服务接口更改升级,不能兼容以前版本,请使用最新版本

更版说明

v0.0.7

接口管理规范化,更改上传接口

v0.0.9

  • 增加 vue2 中台模板,
  • 文件上传时增加用户ID,并根据用户区分目录
  • 中台可管理用户的文件 admin.jsvue.cn/qw/index.ht…

PS:登录信息: 用户上面使用 watt register 注册时输入的名称 密码 123456 这是在watt register时系统的默认密码

v0.0.10

增加 usage 使用情况命令,修复文件夹上传不成功问题

参与贡献

Cabber,