这似乎是前端开发人员的通病,喜欢变来变去,想一出是一出,完全不考虑连贯性。 cloudflare worker 创建项目一开始用的是 wrangler init
, 后来改成了 wrangler create
了。改这么一个字也许对他来说符合它最新审美了,但是用户又要跟着他去记一个新的命令了。操!
1 chuck1in 2024-04-06 12:27:21 +08:00 是的,感觉将来还会继续变来变去。。。。 |
![]() | 2 jamesxu 2024-04-06 12:42:03 +08:00 via Android ![]() 前端项目过了半年不动,打包就容易出错,因为很多包小版本更新都经常不兼容 |
3 street000 2024-04-06 12:57:29 +08:00 ![]() 这就是我们前端特有的 ship fast ,你们有这样的技术吗 |
4 drymonfidelia 2024-04-06 13:01:12 +08:00 ![]() 过几天改成 wrangler add |
![]() | 5 VforVendetta 2024-04-06 13:05:14 +08:00 ![]() 再过几天改成 wrangler new |
![]() | 6 wanniwa 2024-04-06 13:06:40 +08:00 这种真想不通,这种单词有啥好改的想不通。 |
7 Xu3Xan89YsA7oP64 2024-04-06 13:12:03 +08:00 让我想起了 antfu/ni ,希望多一些这种工具 |
![]() | 8 jqtmviyu 2024-04-06 14:36:58 +08:00 ![]() | 作用 | npm | yarn | pnpm | | --------- | ----------------------- | -------------------- | -------------------- | | 安装 | npm install | yarn install | pnpm install | | 安装的简写 | npm i | yarn add | pnpm add | | 强制安装 | | | pnpm install --force | | 卸载 | npm unintall | yarn remove | pnpm remove | | 卸载简写 | npm rm | yarn rm | pnpm rm | | 全局安装 | npm i xxx --global/-g | yarn global add xxx | pnpm add -g xxx | | 安装包(生产模式) | npm i xxx --save/-S | yarn add xxx | pnpm add xxx | | 开发模式安装包 | npm i xxx --save-dev/-D | yarn add xxx -dev/-D | pnpm add -D xxx | | 检查更新 | npm outdated | | | | 更新 | npm update | yarn upgrade | pnpm update | | 全局更新 | npm update -g | yarn global upgrade | pnpm update -g | | 运行 | npm run xxx | yarn run | pnpm run xxx | | 清除缓存 | npm cache clean | yarn cache clean | | | 动态包执行 | npx xxx | yarn dlx xxx | pnpm dlx xxx | | 查看全局安装的包 | npm list -g --depth 0 | yarn global list | pnpm list -g | |
![]() | 9 yxzblue 2024-04-06 14:46:13 +08:00 php 就没有这种问题,5.4 还能跑 |
![]() | 10 cvooc 2024-04-06 14:50:44 +08:00 纯个人想法哈, 变来变去才有些活力, 一潭死水反而没什么意思了. 当然这个现象高情商叫百花齐放, 低情商称为群魔乱舞.哈哈哈 |
11 lxzxl 2024-04-06 14:55:17 +08:00 搜了下文档,不还是 init 吗? https://developers.cloudflare.com/workers/wrangler/commands/ |
![]() | 12 lisongeee 2024-04-06 15:04:36 +08:00 ![]() 我在官方文档中并没有看到你说的 wrangler create 一直都是 wrangler init https://developers.cloudflare.com/workers/wrangler/commands/ 同时我使用 `wrangler create` 后提示 `ERROR Unknown argument: create` ![]() 同时我查看了旧版本 https://github.com/cloudflare/wrangler-legacy 也是 wrangler init 好奇你说的 wrangler create 是从哪里来的? |
13 0o0O0o0O0o 2024-04-06 15:07:55 +08:00 via iPhone 文档和源码里都是 init ,也没有找到 init 变 create 的 issue 或者 pr ,是 ChatGPT 说的 create 吗? |
![]() | 14 lstz 2024-04-06 15:13:22 +08:00 via Android 又不是政企项目,人家才不考虑 backward compatibility 呢 |
![]() | 15 Leeeeex PRO ![]() @lisongeee #12 有意思,lz 疑似虚空打靶,楼下为了嘲讽不加验证就跟着嘲讽。 |
![]() | 16 llej 2024-04-06 15:43:49 +08:00 ![]() 虽然楼主可能是虚空打靶,但我认为 js 的兼容性已经强到不可思议了,所以 js 用户更加的肆无忌惮。 总结:利好 ts |
nbsp; 17 hefish 2024-04-06 16:24:07 +08:00 ![]() 问题不大吧,反正 op 搞个几年,也转行了。。 |
18 kneo 2024-04-06 17:05:19 +08:00 via Android 没用过这个工具。 很多时候建一个新命令是为了不破坏旧命令的兼容性。新命令新行为,旧命令旧行为。 真背锅我看也轮不到前端。你要不然看看 git 有多少命令? |
19 basncy 2024-04-06 17:28:55 +08:00 搭车问一下, 这个 wrangler 是什么神奇的单词? SageMaker, nodejs, Cloudflare Workers, 八杆子打不着的三个玩意儿, 都跟它扯得上五毛关系. 谁来科普一下它们之间的内在美? |
20 FlashEcho 2024-04-06 17:41:27 +08:00 lz 记混了吧,创建项目:npm create cloudflare@latest xxx 创建某个 cf 产品的新实例:npx wrangler xxx create xxx 以上这两个才有 create |
![]() | 21 wdssmq 2024-04-06 17:44:45 +08:00 新建的命令我不知道改没改,但是 wrangler publish 确实改 wrangler deploy 了 |
![]() | 22 Plumbiu 2024-04-06 19:03:31 +08:00 版本不对锁版本呗 |
![]() | 23 BeiChuanAlex 2024-04-06 19:16:33 +08:00 ![]() 前端项目,过了一个星期,我都不知道能不能编译过。。。。。 |
![]() | 24 arfaWong 2024-04-06 21:19:13 +08:00 BeiChuanAlex 固定 node 版本、固定包版本,有啥编译不过的? |
![]() | 25 jellyX 2024-04-06 21:39:01 +08:00 OP 怎么还没回复 12 楼的呢? 我瓜子都买好啦 |
![]() | 26 theprimone 2024-04-06 21:46:47 +08:00 刚好我最近也使用了 wrangler ,这次大改动官方做了比较完善的 TS 支持,已经很不错了,总比不管用户死活好多了 |
28 p412726700 2024-04-07 01:35:09 +08:00 再过几天改成 wrangler build |
![]() | 29 winterpotato 2024-04-07 02:22:56 +08:00 哈哈哈哈哈哈 nodejs 他们还会把 happy eyeball 弄坏了不修 感兴趣可以读这个 https://dmesg.app/nodejs-dual-stack.html |
![]() | 30 seki 2024-04-07 02:38:59 +08:00 这都能扯得上 nodejs 用户…… 假设真的有改动,这个命令根本不高频使用吧,都是用到的时候看文档就行了,根本不需要记。难道楼主是天天新建 cf worker 项目 另外命令叫什么不是维护者自己愿意自己改的吗,不喜欢也可以考虑不升级新版,或者自己 fork 一份想用什么单词用什么单词 |
![]() | 31 suuuch 2024-04-07 08:29:44 +08:00 打个岔,当年我一直吐槽 python 的包管理很垃圾,自从写了 node 项目之后,就不说了。。 |
![]() | 33 Dragonphy 2024-04-07 08:39:02 +08:00 @jqtmviyu 你需要使用 `@antfu/ni`,`ni` = ‘npm install` | `yarn install` | `pnpm install` | `bun install` 其他同理,见 https://github.com/antfu/ni |
![]() | 34 Dragonphy 2024-04-07 08:39:39 +08:00 @shizhibuyu2023 unplugin ,不得不提 Nuxt 团队给前端 DX 做了好多贡献 |
![]() | 35 zfyStars 2024-04-07 09:22:19 +08:00 前端的确 变化太快了 大到框架小到库 总喜欢整点新花样 学习者就痛苦了 |
![]() | 37 SayHelloHi 2024-04-07 10:08:51 +08:00 前端项目 N 年前的项目 可能 run 不起来 一片红 |
![]() | 38 pengtikui 2024-04-07 10:39:03 +08:00 OP 怎么还没回复 12 楼的呢? 我瓜子都买好啦 |
41 kenvix 2024-04-07 12:35:19 +08:00 前端项目记得锁版本 |
42 securityCoding 2024-04-07 12:39:41 +08:00 @jamesxu 不能依赖锁版本吗 |
43 yangzzzzzz 2024-04-07 13:24:55 +08:00 有些 cli 更新了版本 为了和旧版不冲突 就会改这个 |
44 Huelse 2024-04-07 13:57:43 +08:00 因为 js 太 tmd 灵活了,没有版本兼容考虑,自然而然地可以玩出更多花来。 |
45 realJamespond 2024-04-07 14:11:26 +08:00 上面 run 不起来的都没 commit lock 文件?还有 node 版本也要写到 package ,json |
![]() | 46 T3rryy 2024-04-07 14:15:04 +08:00 via iPad 这贴有意思 |
![]() | 47 sudoy |
![]() | 48 sudoy OP @chesha1 你说的对,应该是 npm create cloudflare@latest xxx 或者 npx wrangler xxx create xxx, 反正是警告说 wrangler init 不在支持了。WARNING The `init` command is no longer supported! Please use `npm create cloudflare\@2 --test` instead. |
![]() | 49 sudoy OP |
![]() | 50 xieqiqiang00 2024-04-07 17:21:34 +08:00 via Android lock 恒久远,版本永流传 |
![]() | 51 sudoy OP |
52 xuyang2 2024-04-07 17:33:44 +08:00 变来变去不是问题, 没有编译器检查才是问题 |
![]() | 53 lisongeee 2024-04-07 17:35:16 +08:00 虽然但是,现在除了旧项目用 npm ,新项目基本都用 pnpm 很多知名的开源库,如 vue/vite/next.js 都是用的 pnpm pnpm 不存在你说的这个 node_modules 问题 |
54 sampeng 2024-04-07 17:45:11 +08:00 我特别不能理解的就是 nodejs 的东西 2 年后,我 tmd 编译不出来。。。 |
55 windychen0 2024-04-07 17:52:36 +08:00 @sampeng 跟开发者经验和技术水平有关吧 ,前端门槛低良莠不齐是这样的了, 我初出茅庐的时候也不会关注这些问题,现在我不仅锁死版本,依赖库都是放自己私库管理的 |
![]() | 57 cokar 2024-04-07 18:39:44 +08:00 via Android 想问一下,cf 的 worker 适合做什么项目呢,我感觉很不方便 |
![]() | 58 sudoy OP @cokar 能快速开发 api 服务啊,自从前阵子发现它能直接导入 html 以后,我现在甚至前端渲染直接通过 worker 了。对我来说最重要的应该是免费吧,我大部分应用程序都通过 worker 部署,其中包括盈利的软件,外部成本就只有域名费了,维护都不用,关键是不用担心同时在线人数多了怎么办这类问题。可能是习惯问题,用惯了以后,啥东西都会看一下能不能通过 worker 来实现。 |
![]() | 59 sudoy OP @cokar 不好意思偏题了,我觉得 cf worker 适合做快速开发,省去租服务器、部署环境等工作环节。自从有了 AI 加持,对于轻量级运用,从买域名到产品上线最快两根烟功夫就能发布 |
![]() | 61 sudoy OP @lisongeee 连 npm 都 tm 变,真是服了,npm 变成 pnpm ,过几年怕是又要变成 ppnpm ,ppppnpm ,pppppppnpm |
![]() | 62 lisongeee 2024-04-07 21:46:30 +08:00 @sudoy #61 显然你没有搞清楚 npm 和 pnpm 的关系,它们有点类似 python 里 pipenv/poetry 的关系,各有优劣 pnpm 是某群开发者对 npm 的某些机制不满意搞出来的,从我个人认知目前情况来看,pnpm 将会成为未来很长一段时间的主流 > 过几年怕是又要变成 ppnpm 既然你说是那就是吧,如果你对 npm 不满意,你完全可以 pull/fork 它,用你自己的知识修改让它符合你自己的需求即可,当然大多数人都是没能力改也懒得改就只能骂了,如果我连控制台错误都(看/搜索)不出来是哪个的问题,那我就只能捏着鼻子用了 |
![]() | 63 mouyase 2024-04-08 00:04:44 +08:00 应该没有什么技术是一成不变的吧。哪怕是完美语言 php 呢,不也变成了 PHP: Hypertext Preprocessor 了。 |
![]() | 64 Adelell 2024-04-08 00:11:03 +08:00 via iPhone 会变说明之前的有问题 |
65 ZacT0ny 2024-04-08 07:37:39 +08:00 这也能扯到 nodejs 啊?看了下回复还能扯到 npm 的问题?太过抽象了,不了解清楚直接上论坛张口就来 |
66 xwwsxp 2024-04-08 07:55:56 +08:00 其实,感觉应该是很多前端喜欢追新,比如:package.json 中的包通常都是 vue^3.1.2 这类的,而不是 Vue-3.1.2 ,像 Vue 这种大型的项目可能还好点,有很多人进行测试,很多个人开发者直接不单元测试的,将功能实现了就进行打包了,等用户反馈了,然后继续修改,用户还需要清理本地的 npm 包。 其实,Java 也是类似的;不过,Java 有大一统的 SpringBoot 相对而言,目前好点;毕竟,将许多包都封装为 starter 了,毕竟这些 starter 都是各个场景的,进行了大量的测试。 |
![]() | 67 WJYuan 2024-04-08 09:26:20 +08:00 我猜修改的原因是方便用户不需要再安装 wrangler 的 cli 只需要安装 node/npm 就可以初始化项目 如果你喜欢 init ,也可以用 npm init ,npm create 是 npm init 的别名 |
![]() | 68 lshbosheth 2024-04-08 09:29:42 +08:00 @sudoy 啊 。。。。。。。。你咋不说变成 yarn 了。。。。 |
![]() | 70 thinkwei2012 2024-04-08 11:16:49 +08:00 npm -> yarn -> pnpm ->? bun |
71 sampeng 2024-04-08 14:26:43 +08:00 @windychen0 开发水平差距太多。。锁死版本。。然后依赖库又不在私有库。。在私有库,naxus 又有默认超时时间。几个月不动的依赖库又没了。反正我每年都碰到一次。 |
![]() | 72 Tink PRO 不折腾怎么有 kpi ? |
73 NullData 2024-04-22 14:26:32 +08:00 你这种情况我还真没见过,这样,你先百度搜索 oracle jdk ,然后点击第一个结果进官网下载个 jdk8 |