异步更改 Ionic2 侧边菜单项

Change Ionic2 Side menu items asynchronously

我正在创建一个 Ionic 2 应用程序,其中侧边菜单项将被异步加载。侧面菜单中的项目将在每一页上发生变化。截至目前,我已经使用侧边菜单模板开始了一个新的 Ionic 2 项目。

我面临的问题是,一旦这些项目加载到侧边菜单中,我就无法在另一个页面中更改这些项目。

我的侧边菜单设计代码在 app.html 文件中,项目列表在 app.component.ts 文件中。当应用程序加载时,这些项目列在侧边菜单中,但当我移动到另一个页面时,我无法更改相同的项目。

有什么办法可以改变吗?

我在我的一个项目中遇到过类似的情况,并使用 'ionic-angular' 中的 Events 来实现动态 side-menu 功能。

您可以在 app.component.ts 文件的构造函数中订阅事件,例如 "UPDATE_SIDE_MENU",使用:

events.subscribe("UPDATE_SIDE_MENU", (eventData) => {
   //Logic to update Side-menu 
});

每当您移动到另一个页面,需要更新侧边菜单时,您可以在该页面中发布事件(通常在 ionViewWillEnter 函数中)使用:

 events.publish("UPDATE_SIDE_MENU", "some event related data")

将在您的 app.component.ts 文件中收到,您可以在其中实施代码来更新侧边菜单。