Connect student profiles, defaults, and feedback records to the Rust API. Configure the WeChat AppID, custom tab bar, and local development workflow for version 0.1.0.
41 lines
1.8 KiB
Plaintext
41 lines
1.8 KiB
Plaintext
<view class="page-shell records-page">
|
|
<text class="eyebrow">课堂反馈</text>
|
|
<view class="page-heading">
|
|
<text class="heading-icon">◴</text>
|
|
<text class="page-title">反馈记录</text>
|
|
</view>
|
|
<text class="page-subtitle">按学生查阅已保存的课堂反馈。</text>
|
|
|
|
<view wx:if="{{errorMessage}}" class="status-banner">
|
|
<text>{{errorMessage}}</text>
|
|
<text class="status-action" bindtap="retryLoad">重试</text>
|
|
</view>
|
|
|
|
<picker class="records-filter surface" mode="selector" range="{{profileOptions}}" value="{{selectedProfileIndex}}" disabled="{{loading}}" bindchange="onProfileChange">
|
|
<text class="filter-label">筛选学生</text>
|
|
<text class="filter-value">{{profileOptions[selectedProfileIndex]}}</text>
|
|
</picker>
|
|
|
|
<view wx:if="{{loading && records.length === 0}}" class="loading-state">正在读取反馈记录...</view>
|
|
|
|
<view wx:elif="{{records.length === 0}}" class="records-empty surface">
|
|
<text class="empty-icon">◴</text>
|
|
<text class="empty-title">暂无反馈记录</text>
|
|
<text class="helper-text">保存课堂反馈后,记录会显示在这里。</text>
|
|
<button class="primary-button empty-action" bindtap="goFeedback">填写反馈</button>
|
|
</view>
|
|
|
|
<view wx:else class="record-list">
|
|
<view wx:for="{{records}}" wx:key="id" class="record-card surface">
|
|
<view class="record-top">
|
|
<view>
|
|
<text class="record-profile">{{item.profileName}}</text>
|
|
<text class="record-date">{{item.feedbackDate}}</text>
|
|
</view>
|
|
<button class="delete-button" loading="{{deletingId === item.id}}" disabled="{{deletingId === item.id}}" data-id="{{item.id}}" bindtap="deleteRecord">删除</button>
|
|
</view>
|
|
<text class="record-content">{{item.content}}</text>
|
|
</view>
|
|
</view>
|
|
</view>
|