import { injectPage } from '@jdmini/api' const { getCourseById, ALL_COURSES } = require('../../utils/data.js') const storage = require('../../utils/storage.js') Page(injectPage()({ data: { settings: null, completedCount: 0, practiceCount: 0, favoriteCourses: [], recentWorks: [], showReminderModal: false }, onLoad() { this.loadData() }, onShow() { this.loadData() }, loadData() { const settings = storage.initSettings() const completedCount = storage.getCompletedCount() const practiceCount = storage.getCompletedPracticeCount() const favoriteIds = storage.getFavorites() const favoriteCourses = favoriteIds .map(id => getCourseById(id)) .filter(Boolean) .slice(0, 4) const recentWorks = storage.getWorksRecords().slice(0, 6) this.setData({ settings, completedCount, practiceCount, favoriteCourses, recentWorks }) }, onToggleReminder() { const { settings } = this.data const newVal = !settings.reminderEnabled const updated = storage.saveSettings({ reminderEnabled: newVal }) this.setData({ settings: updated }) wx.showToast({ title: newVal ? '学习提醒已开启' : '学习提醒已关闭', icon: 'none' }) }, onFavCourseTap(e) { const { courseId } = e.currentTarget.dataset wx.navigateTo({ url: `/pages/course-detail/course-detail?courseId=${courseId}` }) }, onWorkTap(e) { const { imagePath } = e.currentTarget.dataset wx.previewImage({ urls: [imagePath], current: imagePath }) }, onAllCategoryTap() { wx.navigateTo({ url: '/pages/category/category' }) }, onHelpTap() { wx.showModal({ title: '帮助说明', content: '零基础也能学会画画!从「零基础入门路径」开始,跟着步骤一步步完成,每天坚持练习,你会进步很快的 🎨', showCancel: false, confirmText: '知道了' }) }, onPrivacyTap() { wx.showModal({ title: '隐私说明', content: '本小程序所有学习数据(进度、收藏、作品)均保存在你的手机本地,不会上传到服务器,请放心使用。', showCancel: false, confirmText: '好的' }) }, onShareAppMessage() { return { title: '画画怎么画 — 零基础绘画学习', path: '/pages/home/home' } } }))