import { useState } from 'react' import Taro from '@tarojs/taro' import { Button, Image, Text, View } from '@tarojs/components' import { AppTabBar } from '../../components/AppTabBar' import { TiangongHeader, TiangongMockNote, TiangongModal } from '../../components/TiangongUI' import { deityCatalog, isTiangongDemo, tiangongMock, tiangongSession } from '../../services/tiangong' import { resolveAssetUrl } from '../../services/request' import { useTiangongSnapshot } from '../../hooks/useTiangongSnapshot' import { DeityId } from '../../utils/tiangongMock' import { hasLoginAccess } from '../../services/loginAccess' import { useRequiredLogin } from '../../hooks/useRequiredLogin' import { TiangongLoginGate } from '../../components/TiangongLoginGate' import './index.scss' export default function FortunePage() { const auth = useRequiredLogin() if (auth.status !== 'allowed' || !hasLoginAccess()) return return } function FortuneContent() { const snapshot = useTiangongSnapshot() const items = deityCatalog.map(item => ({ ...item, ...snapshot.deities[item.id] })) const [selected, setSelected] = useState(null) const [settings, setSettings] = useState(false) const open = (id: DeityId, invite = false) => Taro.navigateTo({ url: `/pages/tiangong-detail/index?id=${id}${invite ? '&mode=invite' : ''}` }) return {snapshot.loading && !snapshot.ready && 正在加载神仙列表…} {snapshot.error && {snapshot.error}} {items.map(item => {selected === item.id && !item.unlocked && 您还未恭请此神是否恭请 } )} {isTiangongDemo() && } {settings && setSettings(false)} variant='plain'> Mock 演示设置仅重置本次演示,不修改真实供奉记录。 } }