Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

🧐[问题 | question]设置layout配置中的target:'_self'之后菜单跳转依旧是在新标签页打开 #10868

Closed
WildernessZyr opened this issue Aug 1, 2023 · 1 comment
Labels

Comments

@WildernessZyr
Copy link

WildernessZyr commented Aug 1, 2023

🧐 问题描述 | Problem description

我在app.tsx中从服务端获取的菜单数据,path为url链接。在defaultSettings.ts文件中配置的target:'self'但是点击菜单跳转仍然是在新标签页打开

💻 示例代码 | Sample code

menu: {
// 每当 initialState?.currentUser?.userid 发生修改时重新执行 request
params: {
// userId: initialState
},
request: async (params: void, defaultMenuData: any) => {
const menus = await getMenuList().then((res: any) => {
return res.data[1].children.map((item: any) => {
return {
path: '/',
name: item.title,
icon: React.createElement(allIcons['SettingOutlined']),
key: item.id,
routes: item.children.map((element: any) => {
return {
path: 'https://umijs.org/docs/api/runtime-config#layout',
//
name:element.title,
key: element.id,
};
}),
};
});
});
// initialState.currentUser 中包含了所有用户信息
return menus;
},
},

🚑 其他信息 | Other information

antdPro版本:V6,umi版本:4

OS:

Node:

浏览器 | browser:

@chenshuai2144
Copy link
Collaborator

根据您提供的代码片段,我注意到您正在加载菜单数据并将其用作导航链接。您提到在设置defaultSettings.ts中的target:'self'后,菜单仍然在新标签页中打开。

根据您的描述,我假设您正在使用Ant Design Pro V6和umi V4。在Ant Design Pro V6中,默认情况下,菜单链接是在新标签页中打开的,而不受defaultSettings.ts中的配置影响。

要在当前标签页中打开菜单链接,您需要进行以下更改:

  1. 打开config.ts文件。
  2. menu配置中的每个菜单项中添加target:'_self'属性。

示例代码如下:

export default [
  {
    path: '/',
    name: '菜单1',
    icon: 'icon1',
    target: '_self', // 添加target属性
  },
  {
    path: '/menu2',
    name: '菜单2',
    icon: 'icon2',
    target: '_self', // 添加target属性
  },
  // 其他菜单项...
];

通过将target设置为'_self',您将告诉浏览器在当前标签页中打开链接。

请注意,这种更改将应用于所有菜单项。如果只想更改特定菜单项的行为,请在相应的菜单项中进行更改。

希望这能帮助解决您的问题!如果您有任何其他疑问,请随时问我。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants