正确区分开发与生产模式:移除调试代码的几种方法

不要将开发模式的调试代码带到生产环境,否则你的实现方式可能是存在安全隐患的。本文主要介绍了可能给生产环境提供调试“后门”的方式,以及基于环境变量、魔术常量、以及`strip-loader`构建工具插件实现对非当前环境的调试代码进行清理的几种方法与原理,并分析了他们各自的优缺点。
正确区分开发与生产模式:移除调试代码的几种方法

Angular 单元测试框架由 karma 迁移为 Jest 实践

1 为什么要从 Karma+Jasmine 切换为 Jest Angular 官方默认推荐的单元测试框架为 Karma + Jasmine。 Karma 是通过启动 Chromium 浏览器,在真实的浏览器环境中执行单元测试。 Jest 通过配置指定运行环境,通常会配置为 jsdom,每个测试文件都在独立的运行环境中执行。 Karma 当前存在的主要问题有: 需要启动浏览器,编译整个项目并在浏览器
Angular 单元测试框架由 karma 迁移为 Jest 实践

Electron 应用中 fs 模块删除 asar 文件被占用的问题与解决

在 Electron 中使用 fs 模块操作 .asar 格式文件,当执行删除操作时,很容易会遇到文件被占用的问题: 操作无法完成,因为文件已在 Electron 中打开 这是因为 require(\'fs\') 是被 Electron 重写了,读取 .asar 格式文件时会当做目录处理。使用 fs 对象的方法对 .asar 文件路径的读取,都会产生对 asar 目录的引用。如: import fs
Electron 应用中 fs 模块删除 asar 文件被占用的问题与解决

fetch API 实现 GET 和 POST 请求

Fetch API 是 XMLHttpRequest 实现功能的一个更理想的替代方案,它提供了一个 JavaScript 接口,用于异步的执行 http 请求。 在常规的简单接口调试中,使用 Fetch API 可以在浏览器控制台快速的发起一个接口请求,并查看其返回结果。下面是相关实现的示例(备份:用于快速查找使用)。 Fetch API 执行 Get 请求示例: await fetch(url,
fetch API 实现 GET 和 POST 请求