本地高效调试npm包方案
背景 在项目开发过程中,我们会通过用 HRM(Hot Module Replacement) 热更新来让我们修改的代码在浏览器中快速看到效果,来验证我们的代码是否正确。但是当项目开始慢慢变大,为了提效、跨项目复用等,我们会去拆分一些通用的 NPM 模块。对于拆分出来的 NPM 模块随着业务场景的变化、技术的发展等因素 会对其进行优化或者重构,但因其…
JS判断视频Video的播放、暂停、结束完成及获取长度事件监听处理
在日常应用场景中,可能会遇到这么一个情况,需要判断用户是否完整的观看完了一部视频,在这个场景中,和视频相关的事件大体涉及到几个部分,获取视频长度,视频开始播放,暂停播放和播放结束,下面来看下如何通过JavaScript来监听获取视频的这几种状态。 (1)html页面视频标签大体如下 <video id="video" co…
通过yarn创建离线镜像仓库
常规的npm在有网环境下进行项目依赖的下载是没问题的 但是开发环境为内网/离线开发的时候,当要把项目全部压缩打包或者直接拷贝到内网的时候,会出现 文件名/路径过长 文件比较碎,文件数量巨多,解/压缩极慢 出现个别依赖文件压缩/复制失败,最终导致项目文件缺失,出现内网环境无法运行等问题 整体思路为通过Yarn部署离线npm仓库 一. 无网安装yarn…
内网/离线 环境全局安装依赖
前提: 需要2台win电脑(或者使用虚拟机) 一台有网,用于下载node/依赖等需要联网的操作 一台没网(关闭网络),用于模拟内网电脑/云电脑等真实无网环境的操作 一. 有网电脑环境下 1. 安装nodejs包 官网地址:https://nodejs.org/zh-cn/download 所有版本下载目录:https://nodejs.org/di…
vue create 和 vue init 的区别
1. vue create 是vue-cli3.x的初始化方式,目前模板是固定的,模板选项可自由配置,创建出来的是vue-cli3的项目,与vue-cli2项目结构不同,配置方法不同,具体配置方法参考官方文档。 使用方式: vue create 项目名称 目录结构: 2. vue init vue init 是vue-cli2.x的初始化方式,可以…
内网环境(无网络/无法访问外网)开发怎么安装npm包?
在做一个项目时,客户对保密要求很严格,只能在他们提供的内网环境下进行开发,无法访问外网,这就涉及到依赖包下载的问题了。 那能不能用有网的电脑,如我自己的电脑下载好,再拷贝到无网的电脑上呢?下面的方法很好用: 任意找个文件夹,执行 npm init 这个初始化了一个干净的项目,生成package.json cd到刚才初始化的项目的根目录,执行 npm…
版本符号含义/semver语义化
指定版本:比如 1.2.0,遵循“住版本.次版本.修订号”的格式规定,安装时只安装指定版本。 波浪号:比如~1.2.2,表示安装1.2.x的最新版本(不低于1.2.2),但是不安装1.3.x,安装时不改变大版本号和次要版本号。 插入号:比如ˆ1.2.2,表示安装1.x.x的最新版本(不低于1.2.2),但是不安装2.x.x,安装时不改变大版本号。 …
科技爱好者周刊(第 248 期):不要夸大 ChatGPT
这里记录每周值得分享的科技内容,周五发布。 本杂志开源,欢迎投稿。周刊另有《谁在招人》服务,发布程序员招聘信息。合作推广请邮件联系(yifeng.ruan@gmail.com)。 封面图 上图是2022年世界自然摄影奖的获奖作品,保加利亚中部城市旧扎戈拉的一只红隼,在一盏生锈的路灯里安家,彷佛很多人在大都市的处境。(via) 本周话题:不要夸大 C…
科技爱好者周刊(第 247 期):扎克伯格的裁员信
这里记录每周值得分享的科技内容,周五发布。 本杂志开源,欢迎投稿。周刊另有《谁在招人》服务,发布程序员招聘信息。合作推广请邮件联系(yifeng.ruan@gmail.com)。 封面图 2019年建成的陕西宝鸡“太白山之眼”,是一个巨型的钢结构,高度达到20层楼(含底部钢架)。它不仅能喷水,还能喷火,集合了声光电表演,将音乐喷泉推向了一个新高度。…
科技爱好者周刊(第 246 期):永不丢失的网络身份
这里记录每周值得分享的科技内容,周五发布。 本杂志开源,欢迎投稿。周刊另有《谁在招人》服务,发布程序员招聘信息。合作推广请邮件联系(yifeng.ruan@gmail.com)。 封面图 由于清洁工人大罢工,巴黎街头本周到处堆积着一袋袋垃圾,行人在其中穿行。如果没人清理垃圾,现代都市可以支撑几天?(via) 本周话题:永不丢失的网络身份 1、 在影…