feat(helpCenter): 帮助中心列表接入内容接口、问题详情页富文本渲染
This commit is contained in:
@@ -1,32 +1,64 @@
|
||||
// pages/helpCenter/helpCenter.ts
|
||||
import { get } from '../../utils/request/index'
|
||||
|
||||
/** 展示用问题项 */
|
||||
interface QuestionItem {
|
||||
id: string
|
||||
title: string
|
||||
}
|
||||
|
||||
/** 内容列表项 */
|
||||
interface ContentRecord {
|
||||
id: string
|
||||
title: string
|
||||
}
|
||||
|
||||
Page({
|
||||
data: {
|
||||
tabs: [
|
||||
{ name: '全部', active: true },
|
||||
{ name: '连接配对', active: false },
|
||||
{ name: '使用测量', active: false },
|
||||
{ name: '数据管理', active: false }
|
||||
{ name: '全部', categoryId: '', active: true },
|
||||
{ name: '操作说明', categoryId: '1', active: false },
|
||||
{ name: '常见问题', categoryId: '2', active: false },
|
||||
{ name: '新手指引', categoryId: '3', active: false },
|
||||
{ name: '系统版本', categoryId: '4', active: false },
|
||||
{ name: '其他', categoryId: '5', active: false },
|
||||
],
|
||||
questions: [
|
||||
{ id: 1, title: '如何连接蓝牙设备?' },
|
||||
{ id: 2, title: '设备无法连接WiFi怎么办?' },
|
||||
{ id: 3, title: '如何添加和管理成员?' },
|
||||
{ id: 4, title: '测量数据不准确如何校准?' },
|
||||
{ id: 5, title: '数据补传功能如何使用?' },
|
||||
{ id: 6, title: '设备电量消耗过快?' }
|
||||
]
|
||||
questions: [] as QuestionItem[],
|
||||
},
|
||||
|
||||
onLoad() {
|
||||
this.loadQuestions('')
|
||||
},
|
||||
|
||||
/** 拉取内容列表(categoryId 为空查全部) */
|
||||
async loadQuestions(categoryId: string) {
|
||||
try {
|
||||
const res = await get<{ records: ContentRecord[] }>(
|
||||
'weighingScale/v6/content/list',
|
||||
categoryId ? { categoryId } : undefined,
|
||||
)
|
||||
this.setData({
|
||||
questions: res.result.records.map(item => ({
|
||||
id: item.id,
|
||||
title: item.title,
|
||||
})),
|
||||
})
|
||||
} catch {
|
||||
// 请求失败已由 request 层统一 toast
|
||||
}
|
||||
},
|
||||
|
||||
onTapTab(e: WechatMiniprogram.TouchEvent) {
|
||||
const index = e.currentTarget.dataset.index as number
|
||||
const tabs = this.data.tabs.map((t, i) => ({ ...t, active: i === index }))
|
||||
this.setData({ tabs })
|
||||
this.loadQuestions(tabs[index].categoryId)
|
||||
},
|
||||
|
||||
onTapQuestion(e: WechatMiniprogram.TouchEvent) {
|
||||
const id = e.currentTarget.dataset.id as string
|
||||
const title = e.currentTarget.dataset.title as string
|
||||
wx.navigateTo({
|
||||
url: '/pages/questionDetails/questionDetails?title=' + encodeURIComponent(title)
|
||||
url: '/pages/questionDetails/questionDetails?id=' + id + '&title=' + encodeURIComponent(title)
|
||||
})
|
||||
}
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user