0%

今天将群晖 NAS 上的 harbor 迁移到绿联 NAS 上,发现我一直用的 harbor 版本还是 v1.8.2,最新版已经是 v2.14.1。毕竟要做数据迁移,不如顺便把 harbor 版本也升级到最新版本。

如果是 v1.8.2 升级到 v1.9.0 还好说,直接用官方的 prepare 工具升级就完了,但是我这跨越的版本太大了,我的迁移思路是通过 harbor 自带的 复制管理 功功能来同步仓库的所用 docker 镜像,连打包 harbor 数据都省了。

阅读全文 »

快捷键

切换大小写

左 Alt + Fn + Tab

图片展示

happy-hacking-professional-2-type-s-keyboard-05 happy-hacking-professional-2-type-s-keyboard-13

16 个 JavaScript 简写神技

JavaScript 是一门强大且灵活的语言,拥有丰富的特性和语法糖。分享下 16 个最常用的 JavaScript 的简写技巧,掌握它们可以让我们编写出更简洁、更优雅的代码,并显著提升开发效率(增加摸鱼时间)。

阅读全文 »

使用 127.0.0.1、localhost及 https 可以正常获取麦克风权限。如果使用的是局域网 IP 地址则需要设置信任的地址

信任的地址配置

chrome://flags/#unsafely-treat-insecure-origin-as-secure

image-20250918103132601

启用后需要重启 Chrome 浏览器,重启后就能成功调起麦克风。

如何设置麦克风设备

  1. 打开浏览器 设置:chrome://settings/。
  2. 依次选择隐私和安全网站设置
  3. 在“权限”下,选择麦克风
  4. 如需选择默认麦克风,请选择向下箭头 。
image-20250928110414005

查看当前设置的麦克风设备:

1
2
3
4
5
6
7
8
9
10
11
navigator.mediaDevices.getUserMedia({ audio: true })
.then((stream) => {
// 获取音频轨道
const audioTracks = stream.getAudioTracks();
if (audioTracks.length > 0) {
const audioTrack = audioTracks[0];
const audioSettings = audioTrack.getSettings();
console.log("音频设备 ID:", audioSettings.deviceId);
console.log("音频设备标签:", audioTrack.label); // 可能为空(需用户授权)
}
});
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
// 首先请求用户权限(这是必要的,否则设备标签可能被隐藏)
navigator.mediaDevices.getUserMedia({ audio: true })
.then(stream => {
// 即使我们不需要流,也需要请求权限才能获取设备标签
// 获取设备列表
return navigator.mediaDevices.enumerateDevices();
})
.then(devices => {
// 筛选出音频输入设备
const audioInputs = devices.filter(device => device.kind === 'audioinput');

console.log('可用的音频输入设备:', audioInputs);

// 处理设备列表
audioInputs.forEach(device => {
console.log(`设备ID: ${device.deviceId}`);
console.log(`设备标签: ${device.label || '未命名设备'}`);
console.log(`设备类型: ${device.kind}`);
console.log('-------------------');
});

// 如果你想停止获取的音频流(因为我们只需要权限)
if (stream) {
stream.getTracks().forEach(track => track.stop());
}
})
.catch(error => {
console.error('获取设备时出错:', error);
});

MacOS快捷键

功能 快捷键
截全屏图 Command+Shift+3
自定义截图 Command+Shift+4
截屏或录屏 Command+Shift+5
立即锁定屏幕 Control + Command + Q
退出登录你的 macOS 用户账户。系统将提示你进行确认。
要在不确认的情况下立即退出登录,请按下 Option-Shift-Command-Q。
Command + Shift + Q
将最前方的窗口最小化至程序坞。 Command-M
访达
创建一个新文件夹 Shift-Command-N
推出所选磁盘或宗卷。 Command-E
打开“桌面”文件夹 Shift-Command-D
打开“最近使用”窗口,其中会显示你最近查看或更改过的所有文件。 Shift-Command-F
打开“前往文件夹”窗口。 Shift-Command-G
打开当前 macOS 用户账户的个人文件夹。 Shift-Command-H
打开“网络”窗口 Shift-Command-K
打开“下载”文件夹 Option-Command-L
前往上一个文件夹。 Command-左中括号 ([)
前往下一个文件夹。 Command-右中括号 (])
打开包含当前文件夹的文件夹。 Command-上箭头
在一个新窗口中打开包含当前文件夹的文件夹。 Command-Control-上箭头
打开所选项目。 Command-下箭头

Mac 键盘快捷键

快捷键汇总

graph LR
  A[快捷键]---AA[fa:fa-apple MacOS操作系统 fa:fa-link]


  AA-.-AAB[fa:fa-link Typora]
  AA-.-AAC[fa:fa-link NeoVim]
  A[快捷键]---AB[fa:fa-windows Windows操作系统 fa:fa-link]
  A[快捷键]---AC[VSCode fa:fa-link]
  A[快捷键]---AD[IDEA fa:fa-link]
  A[快捷键]---AE[Chrome fa:fa-link]
  A[快捷键]---AF[HHKB键盘图 fa:fa-link]

  AB-.-ABB[fa:fa-link Typora]
  AB-.-ABC[fa:fa-link NeoVim]
  ABC---ABCA[fa:fa-link Vim]

    click AA "/posts/MacOS/kjj.html"
    click AB "/posts/Windows/kjj.html"
    click AC "/posts/VSCode/kjj.html"
    click AD "/posts/IDEA/kjj.html"
  click AE "/posts/Chrome/kjj.html"
  click AF "/images/hhkb.jpg"
  click AAB "https://support.typora.io/Shortcut-Keys/"
  click ABCA "https://www.runoob.com/w3cnote/all-vim-cheatsheat.html"
阅读全文 »