feat: 重构输入框为单输入框模式并添加震动反馈

- 将多输入框改为单个输入框,根据答案长度动态调整宽度
- 输入框 placeholder 显示答案字数提示
- 答案错误时触发微信小游戏震动反馈
- WxSDK 新增 vibrateShort/vibrateLong 方法
- 重构音效播放方法,提取公共 playSound 方法
This commit is contained in:
richarjiang
2026-03-14 19:04:48 +08:00
parent 71a38c1fe5
commit c9fbc5212a
5 changed files with 786 additions and 434 deletions

View File

@@ -145,4 +145,43 @@ export class WxSDK {
console.log('[WxSDK] 分享功能初始化完成');
}
// ==================== 震动相关 ====================
/**
* 触发短震动15ms
* 用于轻量级反馈,如按钮点击
*/
static vibrateShort(): void {
const wxApi = WxSDK.getWx();
if (!wxApi) return;
wxApi.vibrateShort({
type: 'medium',
success: () => {
console.log('[WxSDK] 短震动成功');
},
fail: (err: any) => {
console.warn('[WxSDK] 短震动失败', err);
}
});
}
/**
* 触发长震动400ms
* 用于重要反馈,如错误提示
*/
static vibrateLong(): void {
const wxApi = WxSDK.getWx();
if (!wxApi) return;
wxApi.vibrateLong({
success: () => {
console.log('[WxSDK] 长震动成功');
},
fail: (err: any) => {
console.warn('[WxSDK] 长震动失败', err);
}
});
}
}