惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

D
Docker
Apple Machine Learning Research
Apple Machine Learning Research
宝玉的分享
宝玉的分享
博客园 - 叶小钗
酷 壳 – CoolShell
酷 壳 – CoolShell
博客园 - 司徒正美
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
博客园 - Franky
爱范儿
爱范儿
罗磊的独立博客
IT之家
IT之家
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
N
Netflix TechBlog - Medium
云风的 BLOG
云风的 BLOG
P
Proofpoint News Feed
U
Unit 42
Engineering at Meta
Engineering at Meta
WordPress大学
WordPress大学
博客园 - 三生石上(FineUI控件)
T
Tailwind CSS Blog
H
Help Net Security
博客园_首页
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
人人都是产品经理
人人都是产品经理

博客园 - ace--碳水化合物

用ClaudeCode改简历 韦达定理 韦达定理1 梯形1 总平均分 m1 曲线相关 曲线 不等式 抛硬币 错位排列"(全错位)问题 11 1 两圆阴影面积 English1 Tidio 官方帮助中心 ERP 相关系统介绍 蝉翼定理 选配法 利润最大化公式 写在失业的一段话 排列组合-组合 在线简历 概率论与数理统计学习章节 绝对值 比例五大定理 算术平均值与几何平均值 等价符号 公因数与最大公因数 容斥原理
打包网站到exe和app
ace--碳水化合物 · 2026-03-30 · via 博客园 - ace--碳水化合物

这个错误是因为你使用的 **Node.js 版本过低**,不支持正则表达式的 `v` 标志。

### 🔍 问题原因

- 正则表达式中的 `/v` 标志是 **ES2024** 引入的新特性
- 你的 Node.js **v18.20.8** 对该特性的支持不完整
- Pake CLI 依赖的 `string-width` 包使用了这个新语法

### ✅ 解决方案(二选一)

#### 方案一:升级 Node.js 到最新版本(推荐)

1. **升级 Node.js 到 v20 或更高版本**
   - 推荐使用 **Node.js v20 LTS** 或 **v22 LTS**
   - 下载地址:[nodejs.org](https://nodejs.org/) 选择 LTS 版本

2. **升级后重新安装 Pake**
   ```bash
   npm uninstall -g pake-cli
   npm install -g pake-cli
   ```

3. **重新打包**
   ```bash
   pake https://moocstudent.github.io/games/tetris --name Tetris
   ```

#### 方案二:使用 nvm 切换 Node 版本(如果你需要管理多版本)

既然你已经有 nvm(从路径 `D:/node-nvm/` 可以看出),可以用它来安装和切换版本:

```bash
# 安装 Node.js v20 LTS
nvm install 20

# 切换到 v20
nvm use 20

# 确认版本
node --version

# 重新安装 pake-cli
npm install -g pake-cli

# 打包你的网站
pake https://moocstudent.github.io/games/tetris --name Tetris
```

### 📦 打包你的俄罗斯方块游戏

升级 Node 版本后,你可以尝试这样打包:

```bash
# 基础打包
pake https://moocstudent.github.io/games/tetris --name Tetris

# 进阶打包(自定义图标和窗口大小)
pake https://moocstudent.github.io/games/tetris \
  --name Tetris \
  --width 800 \
  --height 600 \
  --icon ./icon.png   # 可选:放一个 icon.png 在同目录下
```

> **💡 提示**:首次打包需要下载 Rust 环境,时间会比较长(可能需要 10-20 分钟),请保持网络通畅并耐心等待。

升级 Node 版本后问题应该就能解决了。如果还有其他报错,欢迎继续追问!