Files
mini-programs/src/app.ts
张成 f033adba10 1
2025-09-02 10:40:37 +08:00

64 lines
1.4 KiB
TypeScript

import { Component, ReactNode } from 'react'
import Taro from '@tarojs/taro';
import './nutui-theme.scss'
import './app.scss'
import { useDictionaryStore } from './store/dictionaryStore'
import { useGlobalStore } from './store/global'
import { check_login_status } from './services/loginService';
// import { getNavbarHeight } from "@/utils/getNavbarHeight";
interface AppProps {
children: ReactNode
}
class App extends Component<AppProps> {
onLaunch() {
console.log('小程序启动,初始化逻辑写这里')
// 已经登录过就跳转到 列表页
let is_login = check_login_status()
if (is_login) {
Taro.redirectTo({
url: '/pages/list/index'
})
}
}
componentDidMount() {
// 初始化字典数据
this.initDictionaryData()
this.getNavBarHeight()
}
componentDidShow() { }
componentDidHide() { }
// 初始化字典数据
private async initDictionaryData() {
try {
const { fetchDictionary } = useDictionaryStore.getState()
await fetchDictionary()
} catch (error) {
console.error('初始化字典数据失败:', error)
}
}
// 获取导航高度
getNavBarHeight = () => {
const { getNavbarHeightInfo } = useGlobalStore.getState()
getNavbarHeightInfo()
}
render() {
// this.props.children 是将要会渲染的页面
return this.props.children
}
}
export default App