最近发现一个保存速度惊艳到我的库snapDOM 。

这货在性能上的表现,完全可以用“碾压”来形容:

  • 👉 相比 html2canvas,快 32 ~ 133 倍

  • 👉 相比 modern-screenshot,也快 2 ~ 93 倍


👉 如果你还在为截图慢、卡顿、模糊烦恼,不妨试试 snapDOM —— 可能会刷新你对前端截图的认知。 🚀

ExcelJS BUG
注入下拉选项方式:['"' +array.join(",") + '"']
Q:存在长度限制,字符串过长时,将导致下拉选项为空
worksheet.getCell('A1').dataValidation = {
type: 'list',
allowBlank: true,
formulae: ['"' +array.join(",") + '"'],
showErrorMessage: true,
error: "请从下拉列表中选择有效选项",
errorTitle: "无效输入"
};

AR.js是一个轻量级的增强现实类JavaScript库
https://ar-js-org.github.io/

vue3+ts无法渲染,报错jsoneditor does not provide an export named 'default'
这是因为vite对commonjs兼容性太差,导致无法引入jsoneditor,可以使用@originjs/vite-plugin-commonjs插件解决。

// vite.config.js
import
from '@originjs/vite-plugin-commonjs'
export default defineConfig({
plugins: [vue(),viteCommonjs()],
})
Vite的 官方文档 也有提到:Pre-bundle them to improve page loading speed and convert CommonJS / UMD modules to ESM.所以不需要这个plugin,不过得直接在项目源代码里 import 'jsoneditor' 才会转换。

参考 issue #4

如何批量修改 CRLF 为 LF

1.项目中安装prettier
npm install --save-dev --save-exact prettier
2.执行命令
npx prettier --write --end-of-line lf .

Content-Disposition:
attachment; filename="%E6%B5%8E%E5%8D%97%E5%B8%82%E5%85%AC%E5%85%B1%E6%95%B0%E6%8D%AE%E6%8E%88%E6%9D%83%E8%BF%90%E8%90%A5%E5%B9%B3%E5%8F%B0%E5%85%AC%E5%85%B1%E6%95%B0%E6%8D%AE%E8%B5%84%E6%BA%90%E7%94%B3%E8%AF%B7%E8%A1%A8.docx"

由于google安全策略,会把“ -> _

状态机​
状态机是一种数据模型,用于描述应用可能处于的所有可能状态,以及从一种状态转换到另一种状态的所有可能方式。虽然对于简单的组件来说,这可能有些小题大做了,但它的确可以使得复杂的状态流更加健壮和易于管理。

XState 是 JavaScript 中一个比较常用的状态机实现方案

【Immer】不可变数据结构通过永不更改状态对象来解决这个问题。与 Vue 不同的是,它会创建一个新对象,保留旧的对象未发生改变的一部分。在 JavaScript 中有多种不同的方式来使用不可变数据,但我们推荐使用 Immer 搭配 Vue,因为它使你可以在保持原有直观、可变的语法的同时,使用不可变数据。

JustAuth: 开箱即用的整合第三方登录的开源组件

sshpass 一个简单、轻量级命令行工具,提供非交互式密码验证

1 下一页