docs: 添加购买按钮修复工作日志 2026-03-20

This commit is contained in:
NAC Admin 2026-03-20 08:42:03 +08:00
parent 08be1173cb
commit d13f9bee60
1 changed files with 93 additions and 0 deletions

View File

@ -0,0 +1,93 @@
# TRC ICO 购买按钮修复工作日志
## 修复时间
2026-03-20
## 问题描述
trc-ico.newassetchain.io 购买区域缺少购买按钮,用户无法完成购买操作。
## 根本原因分析
### 问题代码位置
文件: `client/src/pages/Home.tsx` 第 498 行
### 问题代码
```tsx
{!wallet.isConnected ? (
// 显示连接钱包提示
<WalletSelector ... />
) : isWrongNetwork ? null : ( // ← 问题所在
// 显示购买按钮
<button onClick={handleBuy}>Buy XIC</button>
)}
```
### 问题原因
当用户钱包已连接但网络不对(`isWrongNetwork === true`)时,代码返回 `null`
导致购买按钮完全不渲染,用户看到的是空白区域。
虽然页面上方有 Wrong Network 警告 Banner但购买按钮区域是空的
用户不知道切换网络后会出现购买按钮,体验极差。
## 修复方案
### 修复代码
```tsx
{!wallet.isConnected ? (
// 显示连接钱包提示
<WalletSelector ... />
) : isWrongNetwork ? ( // ← 修复后
// 显示切换网络按钮
<button onClick={() => wallet.switchNetwork(targetChainId)} ...>
切换到 {CONTRACTS[network].chainName} 后即可购买
</button>
) : (
// 显示购买按钮
<button onClick={handleBuy}>Buy XIC</button>
)}
```
## 合约配置确认
| 合约 | 地址 | 链 |
|------|------|----|
| BSC Presale | 0x5953c025dA734e710886916F2d739A3A78f8bbc4 | BSC (56) |
| ETH Presale | 0x85AB2F2d9f7ca7ecB272b5E8726c70f3fd45D1E3 | ETH (1) |
| BSC Token (XIC) | 0x59ff34dd59680a7125782b1f6df2a86ed46f5a24 | BSC (56) |
| Claim | 0x9d8ea8223c8d7d977744f2f7cfc076341355a419 | BSC (56) |
| TRON 收款 | TWc2ugYBFN5aSoimAh4qGt9oMyket6NYZp | TRON |
## 构建信息
- 构建时间: 2026-03-20
- 新 bundle: index-CTII5lfh.js (814,584 bytes)
- 旧 bundle 备份: dist/public.bak.20260320_*
## 备份文件
- Home.tsx 备份: client/src/pages/Home.tsx.bak.buy_btn_fix_20260320
## 部署步骤
1. 修改 client/src/pages/Home.tsx 第 498 行
2. 执行 pnpm run build 重新构建
3. 删除 dist/public/__manus__ 目录(中国用户无法访问)
4. PM2 重启: pm2 restart nac-presale-test
5. 验证: HTTP 200 响应
## 其他发现的问题(待后续处理)
### P1: usePresale.ts 重复键警告
文件 `client/src/hooks/usePresale.ts` 第 298 行有重复 key `calcTokens`
构建时有警告但不影响功能。
### P1: 链上数据加载失败
页面显示 "Loading on-chain data..." 和 "$0 Raised"
原因是 contracts.ts 中的 ABI 缺少部分查询函数,导致链上统计数据无法读取。
### P2: BSC Presale 合约地址不匹配
- contracts.ts 中配置: 0x5953c025dA734e710886916F2d739A3A78f8bbc4
- 用户提供的实际合约: 0xc65e7a2738ed884db8d26a6eb2fecf7daca2e90c
- 需要确认哪个是正确的 presale 合约
## Git 提交
- 提交 hash: 08be117
- 提交信息: fix: 修复购买按钮缺失问题
- 推送到: git.newassetchain.io/nacadmin/nac-presale.git