Как добавить значок бокового меню в wix-реагировать на родную навигацию v2? - PullRequest
0 голосов
/ 12 ноября 2018

Я новичок в реакции-родной. я хочу добавить значок бокового меню, как показано на следующем рисунке enter image description here

в wix-реагировать на родную навигацию v1 было довольно просто. Нам нужно просто добавить

{
  tabs:[
    screen: "myscreenName",
    label: "MyLabel",
    icon: require('icon-url')
  ]
}

Но в документации V2 они сказали, что если вы добавите в боковое меню, используйте это, но они не сказали, как добавить иконку.

{
  root: {
    sideMenu: {
      left: {
        component: {
          name: 'sideDrawer'
        }
      },
      center: {
        bottomTabs: {
          .....
        }
      }
    }
  }
}

В результате появляется боковой ящик, если я перетащил с левой стороны, но значок отсутствует. Любая идея, как я могу добавить значок, как это на WIX-реагировать на родную навигацию v2

Ответы [ 3 ]

0 голосов
/ 12 ноября 2018

Вы можете проверить эту ссылку https://github.com/wix/react-native-navigation/issues/796

Кнопка гамбургера больше не добавляется по умолчанию, так как многие Пользователи просили контролировать, когда он отображается, а когда нет. В каждом на экране вы хотели бы иметь кнопку гамбургера, добавьте ее явно:

static navigatorButtons = {leftButtons: [ { id: 'sideMenu' }]};

0 голосов
/ 19 декабря 2018

Вы можете добавить эту статическую функцию с различными конфигами на вашем экране:

export default class Screen extends Component {

  static get options() {
    return {
      topBar: {
        title: {
          text: 'Screen',
        },
        leftButtons: [
          {
            icon: require('../../../assets/icons/burgerMenu.png'),
            id: 'toggleDrawer',
          },
        ],
      },
    };
  }
}

Полный список параметров можно найти в документации по этой ссылке: Параметры topBar

0 голосов
/ 12 ноября 2018

Вы можете попробовать приведенный ниже код. Это создает экран на основе вкладок. Если вы хотите в качестве экрана, вы можете использовать Navigation.startSingleScreenApp (...)

    Navigation.events().registerAppLaunchedListener(() => {
  Navigation.setRoot({
    root: {
      sideMenu: {
        id: "sideMenu",
        left: {
          component: {
            id: "Drawer",
            name: "navigation.Drawer"
          }
        },
        center: {
          stack: {
            id: "AppRoot",
            children: [{
              component: {
                id: "App",
                name: "navigation.AppScreen"
              }
            }]
          }
        }
      }
    }
  });
}
...