function SubMenu(h, menu, selectMenu) {
  let icon;
  if (menu.icon) {
    // 菜单激活的时候图标要变颜色  图标名称要处理好  应该是在默认的基础上加个'_active'
    const iconName =
      selectMenu.indexOf(menu.path) < 0 ? menu.icon : menu.icon + "_active";
    icon = <Icon name={iconName} size={18} />;
  }
  return (
    <a-sub-menu key={menu.path}>
      <span slot="title" class="submenu-title-wrapper">
        {icon}
        {menu.title}
      </span>
      {menu.children.map((item) => {
        return createMenu.call(this, h, item);
      })}
    </a-sub-menu>
  );
}

function MenuItem(h, menu, selectMenu) {
  let icon;
  if (menu.icon) {
    // 菜单激活的时候图标要变颜色  图标名称要处理好  应该是在默认的基础上加个'_active'
    const iconName =
      selectMenu.indexOf(menu.path) < 0 ? menu.icon : menu.icon + "_active";
    icon = <Icon name={iconName} size={18} />;
  }
  return (
    <a-menu-item key={menu.path}>
      <router-link to={menu.path}>
        {icon}
        {menu.title}
      </router-link>
    </a-menu-item>
  );
}

export default function createMenu(h, menu, selectMenu) {
  if (menu.hidden) {
    return false;
  }
  if (menu.children && menu.children.length) {
    return SubMenu.call(this, h, menu, selectMenu);
  }
  return MenuItem.call(this, h, menu, selectMenu);
}
