hookehuyr

fix(Profile): 修复菜单项初始化逻辑,根据用户身份显示不同菜单

根据用户是否为创建者来动态显示或隐藏'points'和'rewards'菜单项
...@@ -98,7 +98,8 @@ const allMenuItems = [ ...@@ -98,7 +98,8 @@ const allMenuItems = [
98 } 98 }
99 ]; 99 ];
100 100
101 -const menuItems = shallowRef([]); 101 +// 初始化菜单项,先显示除了'points'和'rewards'之外的菜单
102 +const menuItems = shallowRef(allMenuItems.filter(item => !['points', 'rewards'].includes(item.id)));
102 103
103 const userInfo = ref({ 104 const userInfo = ref({
104 nickName: '', 105 nickName: '',
...@@ -119,9 +120,11 @@ const initPageData = async () => { ...@@ -119,9 +120,11 @@ const initPageData = async () => {
119 avatarUrl: data?.user?.avatar_url || '', 120 avatarUrl: data?.user?.avatar_url || '',
120 is_creator: data?.user?.is_creator || false 121 is_creator: data?.user?.is_creator || false
121 } 122 }
123 + // 根据用户身份更新菜单项
122 if (userInfo.value.is_creator) { 124 if (userInfo.value.is_creator) {
123 menuItems.value = allMenuItems; 125 menuItems.value = allMenuItems;
124 } else { 126 } else {
127 + // 非创建者保持原有的过滤逻辑
125 menuItems.value = allMenuItems.filter(item => !['points', 'rewards'].includes(item.id)); 128 menuItems.value = allMenuItems.filter(item => !['points', 'rewards'].includes(item.id));
126 } 129 }
127 } 130 }
......