49 lines
2.0 KiB
Plaintext
49 lines
2.0 KiB
Plaintext
<view class="page">
|
|
<scroll-view scroll-y class="content">
|
|
<view class="progress-box">
|
|
<view class="progress-head">
|
|
<text class="progress-label">复习进度</text>
|
|
<text class="progress-count">题号 {{current}} <text class="progress-total">/ {{total}}</text></text>
|
|
</view>
|
|
<view class="progress-bar ghost-border"><view class="progress-fill" style="width: {{progress}}%;"></view></view>
|
|
</view>
|
|
|
|
<view wx:if="{{!questions.length}}" class="empty-state">
|
|
<text class="empty-title">暂无题目</text>
|
|
<text class="empty-subtitle">请先生成复习会话</text>
|
|
</view>
|
|
|
|
<view wx:else class="glass-card question-card ghost-border">
|
|
<view class="ambient-glow"></view>
|
|
<view class="mode-tag">{{questions[current-1].question_mode || 'C'}}</view>
|
|
<view class="meaning-wrap" wx:if="{{meaning}}">
|
|
<text class="meaning">{{meaning}}</text>
|
|
</view>
|
|
|
|
<view wx:if="{{questions[current-1].question_mode === 'C'}}" class="cloze-wrap">
|
|
<text class="cloze">{{questions[current-1].blank_prompt || word}}</text>
|
|
</view>
|
|
<view wx:else class="word-wrap">
|
|
<text class="word">{{word}}</text>
|
|
</view>
|
|
|
|
<view class="input-shell">
|
|
<input class="answer" value="{{answer}}" placeholder="输入答案..." bindinput="onAnswerInput" />
|
|
</view>
|
|
<view wx:if="{{showFeedback}}" class="feedback-box {{feedbackType}}">
|
|
<text class="feedback">{{feedback}}</text>
|
|
<text wx:if="{{revealAnswer}}" class="reveal-answer">{{revealAnswer}}</text>
|
|
</view>
|
|
</view>
|
|
|
|
<view wx:if="{{questions.length}}" class="actions-cluster">
|
|
<button class="secondary-btn" bindtap="checkAnswer">查看解析</button>
|
|
<button class="primary-btn" bindtap="nextQuestion">下一题</button>
|
|
</view>
|
|
|
|
<view wx:if="{{questions.length}}" class="master-action" bindtap="markMastered">
|
|
<text class="master-text {{masterHint ? 'active' : ''}}">标记已掌握</text>
|
|
</view>
|
|
</scroll-view>
|
|
</view>
|