【AI+赋能前端-提效篇】开发一个支持项目打包产物本地调试的小工具,已发布到npm!!

推荐一本最近看的爽文小说,先说明男主在爱情上是渣男,但是在为人处事上确实是老油条,有些方面还是可以借鉴的哈哈哈

回归正题

成品展示

shell 复制代码
1. 全局安装
---> npm i rc-anywhere -g

2. 进入想要调试的产物包(比如dist/)目录下,初始化配置模板文件(proxyConfig.js)
---> rc-anywhere init

3. 配置proxyConfig.js,配置代理信息
    module.exports = {
        [需要代理的url]: {
          target: [代理目标地址],
          changeOrigin: true
        },
        // 可以在此添加更多代理配置
    }; 
    
4. 配置完代理,直接启动服务就可以愉快地自测啦~~
---> rc-anywhere serve

为什么要开发这玩意?

之前我在项目开发过程中,一般会用到开发服务器的场景都是本地开发,而这个场景下,咱们的好朋友vite(webpack也是哈,不能有了新人忘了老祖)贴心地提供了devSever服务,让我们可以在本地通过代理的方式访问后端服务。一般本地自测没问题也就直接提交代码,线上环境部署就交给运维老哥了。但素... 某一天,在客户那边部署的前端项目报错了,由于是部署在客户那边的服务器,这意味着我们的修复bug工作得争取一步到位地完成,避免让客户重复部署,这会显得咱们很不专业(emm~,不能忍)

于是,咱就找了一个可以帮忙运行dist包的npm库,也就是anywhere(rc-anywhere也是基于这个包来改造的,致敬~)。正当咱准备大展身手来看看线上环境的报错问题时,不出意外出意外了,damn,怎么线上环境的接口访问不通,报的404,路径找不到??按照以往的经验,这必须得配个代理,好在anywhere使用说明写着可以设置代理,我悬着的心才慢慢放下,跟着提示操作了一遍,不知道是我哪步操作整不对,总之代理就是没成功。oh,man 真让人沮丧(我的口头禅哈,不是AI说的,别误会)。对了,说到AI,这玩意现在不是很火吗,刚好咱充了cursor会员,这不得让AI+给咱也赋能赋能。

化身产品经理,向AI提需求

接下来是我这个临时产品指使AI工作的过程(桀桀桀,咱也有指挥牛马的时候了~)

  • 首先想让AI写一个类似anywhere的工具,那就带它先读读anywhere的源码,让它分析这个项目的架构,再借鉴过来用于设计新项目的架构。AI学到了这个架构,咱们还得帮它筛选筛选,去其糟粕,有些设计不适合借鉴的,要给AI提示,不然它就会吭哧吭哧地往下执行,最后出来一个牛头不对马嘴的东西。

下面就是最终敲定的组织结构

  • 接下来是敲代码环节,这个环节咱的作用就是,创建好对应的文件,让AI往里面填东西。写完一个模块,咱在化身测试员,对模块的每个功能点进行测试验证,验证通过才能进行下步操作。就这样一边写一边测,项目的肢体也逐渐拼接完成有了大致的轮廓。

测试调校,神体大成指日可待

不知道大家看过TVB的《封神榜》,有一集,哪吒一行人和申公豹斗法,其中有个目的就是为了获得天尊神水,帮助哪吒恢复肉身(安利一波剧,我看了n遍,真的无敌好看)。(正经脸--)咱们的开发迎来了关键阶段,是否可以作为一个可使用发布的npm包,就差一瓶"天尊神水"(调校)了,让拼接的肢体真正可以协调配合。

咱们这个包,主要就是两个命令以及对应的参数,将每个命令及对应的参数进行测试,看看功能是否符合预期。全部命令测试完毕就可以准备发布了。

npm 发布

这一步其实不用我多说啥了,现在有AI,问一下,它可以把npm的前世今生都给你娓娓道来,不过这里我还是推荐一下文章,大家可以看看没有AI的时候,前辈们的npm发布手札

# 超详细 如何发布自己的 npm 包

# 【一库】yalc: 可能是最好的前端link调试方案(已经非常谦虚了)

最后,各位看官,收藏加点赞,往后年年有大钱赚!!

相关推荐
gnip1 小时前
js上下文
前端·javascript
中草药z1 小时前
【Stream API】高效简化集合处理
java·前端·javascript·stream·parallelstream·并行流
不知名raver(学python版)1 小时前
npm ERR! code ELIFECYCLE npm ERR! errno 1 npm ERR!
前端·npm·node.js
醉方休2 小时前
React中使用DDD(领域驱动设计)
前端·react.js·前端框架
excel2 小时前
📖 小说网站的预导航实战:link 预加载 + fetch + 前进后退全支持
前端
学习3人组2 小时前
React 样式隔离核心方法和最佳实践
前端·react.js·前端框架
世伟爱吗喽2 小时前
threejs入门学习日记
前端·javascript·three.js
朝阳5812 小时前
用 Rust + Actix-Web 打造“Hello, WebSocket!”——从握手到回声,只需 50 行代码
前端·websocket·rust
F2E_Zhangmo2 小时前
基于cornerstone3D的dicom影像浏览器 第五章 在Displayer四个角落显示信息
开发语言·前端·javascript