Files
zyt/admin/API_NAME_CHANGE_FIX.md
T
2026-03-04 15:32:30 +08:00

166 lines
4.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# TUICallKit API 名称变更修复
## 问题描述
升级到 `@trtc/calls-uikit-vue` 4.2.2 后,出现编译错误:
```
模块"@trtc/calls-uikit-vue"没有导出的成员"TUICallKitServer"
```
## 根本原因
新版本的包有两个重要变更:
1. API 名称从 `TUICallKitServer` 改为 `TUICallKitAPI`
2. 发起通话的方法从 `call()` 改为 `calls()`,参数也有变化
## 解决方案
### 1. 更新导入语句
**旧版本 (4.0.12):**
```typescript
import { TUICallKitServer, TUICallKit, TUICallType, STATUS } from '@tencentcloud/call-uikit-vue'
```
**新版本 (4.2.2):**
```typescript
import { TUICallKitAPI, TUICallKit, TUICallType, STATUS } from '@trtc/calls-uikit-vue'
```
### 2. 更新发起通话的方法
**旧版本 (4.0.12):**
```typescript
// 一对一通话
await TUICallKitServer.call({
userID: 'user123',
type: TUICallType.VIDEO_CALL
})
```
**新版本 (4.2.2):**
```typescript
// 一对一通话 - 使用 calls 方法,参数改为 userIDList 数组
await TUICallKitAPI.calls({
userIDList: ['user123'],
type: TUICallType.VIDEO_CALL
})
// 多人通话 - 同样使用 calls 方法
await TUICallKitAPI.calls({
userIDList: ['user1', 'user2', 'user3'],
type: TUICallType.VIDEO_CALL
})
```
### 3. 更新其他 API 调用
将所有 `TUICallKitServer` 替换为 `TUICallKitAPI`
```typescript
// 初始化
TUICallKitAPI.init({ ... })
// 发起通话(注意:方法名改为 calls,参数改为 userIDList
TUICallKitAPI.calls({
userIDList: ['user123'],
type: TUICallType.VIDEO_CALL
})
// 挂断
TUICallKitAPI.hangup()
// 接听
TUICallKitAPI.accept()
// 拒绝
TUICallKitAPI.reject()
// 设置回调
TUICallKitAPI.setCallback({ ... })
// 浮窗设置
TUICallKitAPI.enableFloatWindow(false)
```
## 已修复的文件
1.`admin/src/components/video-call/index.vue`
2.`admin/src/views/test/patient-call.vue`
3.`UIKIT_UPGRADE_COMPLETE.md`
## 下一步操作
### 1. 重新安装依赖
```bash
cd admin
# 删除旧依赖
rm -rf node_modules package-lock.json
# 安装新依赖
npm install
```
### 2. 启动开发服务器
```bash
npm run dev
```
### 3. 验证修复
- ✅ 编译成功,没有错误
- ✅ 可以正常登录
- ✅ 可以发起通话
- ✅ 可以接听通话
## API 对比表
| 功能 | 旧版本 (4.0.12) | 新版本 (4.2.2) |
|------|----------------|----------------|
| 包名 | @tencentcloud/call-uikit-vue | @trtc/calls-uikit-vue |
| API名称 | TUICallKitServer | TUICallKitAPI |
| 初始化 | TUICallKitServer.init() | TUICallKitAPI.init() |
| 发起通话 | TUICallKitServer.call({userID, type}) | TUICallKitAPI.calls({userIDList, type}) |
| 挂断 | TUICallKitServer.hangup() | TUICallKitAPI.hangup() |
| 接听 | TUICallKitServer.accept() | TUICallKitAPI.accept() |
| 拒绝 | TUICallKitServer.reject() | TUICallKitAPI.reject() |
| 设置回调 | TUICallKitServer.setCallback() | TUICallKitAPI.setCallback() |
| 浮窗设置 | TUICallKitServer.enableFloatWindow() | TUICallKitAPI.enableFloatWindow() |
## 重要变更说明
### 1. API 名称变更
- `TUICallKitServer``TUICallKitAPI`
### 2. 发起通话方法变更
- 方法名:`call()``calls()`
- 参数变化:
- 旧版本:`{ userID: string, type: TUICallType }`
- 新版本:`{ userIDList: string[], type: TUICallType }`
- 说明:新版本统一使用数组参数,一对一通话时数组只包含一个元素
## 注意事项
1. **API 名称变更**`TUICallKitServer``TUICallKitAPI`
2. **发起通话方法变更**
- 方法名:`call()``calls()`
- 参数:`userID``userIDList`(数组)
3. **组件名称不变**`TUICallKit` 组件名称保持不变
4. **类型定义不变**`TUICallType``STATUS` 等类型定义保持不变
5. **回调机制不变**`statusChanged``afterCalling` 等回调保持不变
6. **其他方法不变**`init()``hangup()``accept()``reject()` 等方法参数保持不变
## 参考文档
- [官方文档 - Web&H5 (Vue3)](https://www.tencentcloud.com/document/product/647/50993)
- [API 文档](https://web.sdk.qcloud.com/component/trtccalling/doc/web/zh-cn/)
---
**修复日期:** 2024-03-04
**修复版本:** 4.0.12 → 4.2.2
**状态:** ✅ 完成