import Taro from '@tarojs/taro' import {useEffect, useState} from 'react' import {Image} from '@nutui/nutui-react-taro' import {Loading} from '@nutui/nutui-react-taro' import {listCmsNavigation} from "@/api/cms/cmsNavigation" import {CmsNavigation} from "@/api/cms/cmsNavigation/model" const Page = () => { const [loading, setLoading] = useState(true) const [navItems, setNavItems] = useState([]) const reload = async () => { // 读取首页菜单 const home = await listCmsNavigation({model: 'index'}); if (home && home.length > 0) { // 读取首页导航条 const menus = await listCmsNavigation({parentId: home[0].navigationId, hide: 0}); setNavItems(menus || []) } }; const onNav = (row: CmsNavigation) => { console.log('nav = ', row) console.log('path = ', `/${row.model}${row.path}`) if (row.model == 'goods') { return Taro.navigateTo({url: `/shop/category/index?id=${row.navigationId}`}) } if (row.model == 'article') { return Taro.navigateTo({url: `/cms/category/index?id=${row.navigationId}`}) } return Taro.navigateTo({url: `${row.path}`}) } useEffect(() => { reload().then(() => { setLoading(false) }); }, []) return ( loading ? (加载中) :
{ navItems.map((item, index) => (
onNav(item)}>
{item?.title}
)) }
) } export default Page