import { createPublish } from 'applet-page-component'; import { queryToUrl } from './index'; const getOptions = () => ({ ...createPublish(), data: { pageType: undefined, componentData: undefined, query: {}, title: '', header: 'show', background: '#1677FF', color: '#fff', backBtnColor: '#000000' }, onReadyHeader({ height }) { const { componentData = {} } = this.data; componentData.headerHeight = height; this.setData({ componentData: { ...componentData } }); }, onLoad(query) { const { title, pageType, header = 'show', background, color, backBtnColor, ...other } = query; title && my.setNavigationBar({ title, backgroundColor: background || '#1677FF' }); const { globalData } = getApp(); const { pageTemp = {} } = globalData; const componentData = pageTemp[pageType] || {}; this.setData({ title, header, pageType, componentData, query: other, background: background || '#1677FF', color: color || '#fff', backBtnColor: backBtnColor || false }); }, onUnload() { if (getApp().globalData.pageTemp) { delete getApp().globalData.pageTemp[this.data.pageType]; } }, // 分享 onShareAppMessage() { const { pageType, query, title } = this.data; return { title, path: `${this.route}?pageType=${pageType}&title=${title}${queryToUrl(query)}` }; } }); export default getOptions;