摘要: 背景 基于复杂的历史原因,我们正在开发、维护一个非典型前端项目:使用 vue2 开发页面,编译打包后,由 express 进行缝合、响应。 目前 gitlab 上统计仓库大小为341.9 MB,我本机全量编译打包时间已经攀升到 6 分钟左右。当多个分支频繁切换时,“那画面太美我不敢看”。 前不久优化 阅读全文
posted @ 2021-12-16 12:27 Liaofy 阅读(41) 评论(0) 推荐(0) 编辑
摘要: 背景 公司每年都有不同的H5活动(vue2)上线、下线,这些代码都在存在于同一个仓库中。 虽然过期的活动代码,增加了无效的编译时间和打包内容,但是我们并不想删除它们,毕竟代码即资产。 所以,我们希望实现一种方案,既能保留所有活动路由,又能将过期活动内容从包中剔除。 webpack loader lo 阅读全文
posted @ 2021-12-01 18:29 Liaofy 阅读(6) 评论(0) 推荐(0) 编辑
摘要: uniapp 让我们轻松使用 vue 开发各种小程序。然而,我在实际开发中发现,随着代码数量的不断增长,有两个问题越发凸显: 编译时间不断拉长 编译产物越来越大 以我本机(i5-6500CPU @ 3.20GHz,内存16G,64位操作系统)uniapp项目为例:一次全量生产环境编译,花费时间3mi 阅读全文
posted @ 2021-11-18 18:31 Liaofy 阅读(33) 评论(0) 推荐(0) 编辑
摘要: webpack 打包底层是调用 node 的各种接口/能力,所以调试 webpack 其实和调试一个node应用没什么差别。 恰好最近在改造一个uniapp项目的编译流程,需要使用一些webapck文档上没有的数据。通过debug的方式,我们得以一窥究竟。本文仅记录如何进入开启 vscode 调试模 阅读全文
posted @ 2021-11-15 10:53 Liaofy 阅读(72) 评论(0) 推荐(0) 编辑
摘要: Unicode 是什么? Unicode,官方中文名称“统一码”。通常大家谈到的 Unicode 一般指字符集的意思,但 Unicode 标准实际涵盖两个方面的内容: Unicode 字符集 Unicode 编码 Unicode 字符集 Unicode 为每个字符提供一个唯一数字(码点 code p 阅读全文
posted @ 2021-10-13 16:56 Liaofy 阅读(203) 评论(0) 推荐(0) 编辑
摘要: 卧槽!牛逼!IMBA!这就是我第一次看到这个库的心情。迫不及待的想要分享给大伙儿。 同步代码 众所周知,JS 是一门‘单线程’语言,一旦开始,就会从始至终、从上到下的执行完毕,非常的专一。 console.log(1) console.log(2) console.log(3) // 1 // 2 阅读全文
posted @ 2021-09-06 09:18 Liaofy 阅读(112) 评论(0) 推荐(0) 编辑
摘要: 这个活动搞一个转盘抽奖吧,简单弄下就行 离下班还有半小时,产品发给我了一个小需求。 一看我就笑了——转盘抽奖,这还不容易?无非: 请求数据; 等待结果返回,计算转盘停止时的角度 x,开始旋转; 等待旋转停止 关键代码: const angle = await fetchData() const ro 阅读全文
posted @ 2021-09-03 15:48 Liaofy 阅读(73) 评论(0) 推荐(0) 编辑
摘要: 背景 试想这样一个场景:在访问系统的某个页面时,会发出多个请求,恰巧在某个时间点,登录信息过期了,这个时候需要自动跳转到登录页。由于请求返回的时间不一致,可能会多次执行跳转,造成使用困扰。 问题核心 法律常识告诉我,不能对同一行为进行多次评价。所以,我们也不能对同一错误进行多次处理。 解决方案:发布 阅读全文
posted @ 2021-04-22 18:19 Liaofy 阅读(99) 评论(0) 推荐(0) 编辑
摘要: devServer: { proxy: { // 代理支付接口,需要把 src/lib/request/transformers/index.js 中 defray 函数的 baseURL 去掉 '/api-pay': { target: process.env.VUE_APP_BASE_URL_D 阅读全文
posted @ 2021-04-06 15:56 Liaofy 阅读(703) 评论(0) 推荐(0) 编辑
摘要: 背景 在 App.vue 文件中通过 addRoutes 动态添加路由。访问路由 /login,我发现 this.$route 返回的数据中,meta.a 却是 undefined。 如果一秒后再次访问 this.$route,meta.a 为 1。这是为何? create() { const ro 阅读全文
posted @ 2021-03-26 17:55 Liaofy 阅读(1188) 评论(0) 推荐(0) 编辑