Я использую NativeScript Vue и хочу добавить нижнюю панель навигации iOS с 3 значками («Домой», «Учетная запись», «Корзина»). Я бы предпочел посмотреть, смогу ли я сделать это самостоятельно, не добавляя для этого плагин. Заставить компонент панели навигации отобразить в моем приложении. Vue - это просто, но как сделать так, чтобы это сохранялось во всех остальных моих компонентах при изменении файла Vue? Могу ли я определить его в main.js
и сделать его глобально доступным компонентом?
NativeScript Vue: как добавить компонент нижней навигации, который будет сохраняться во всем приложении?
comment
Могу я узнать, почему бы вам не использовать TabView? Вы можете помещать рамки внутри каждой вкладки и перемещаться по ней, TabBar останется внизу во всем приложении. Есть ли какая-то конкретная причина, по которой вы предпочитаете настраиваемую нижнюю панель навигации?
- person Manoj   schedule 02.07.2019
comment
@Manoj нет реальной причины - я просто хотел посмотреть, будет ли много накладных расходов на создание моего собственного, но это не похоже на то, что оно того стоит. Я выберу TabView. Спасибо :)
- person perrymjj   schedule 03.07.2019
Ответы (1)
Если вы не хотите использовать существующий TabView и знаете о плюсах и минусах настраиваемого компонента пользовательского интерфейса, вы можете рассмотреть возможность использования компонента со слотами, который обертывает содержимое вашей страницы.
PageFrame.vue
<template>
<Page>
<GridLayout rows="auto * auto">
<ActionBarComponent row="0" :title="title" />
<GridLayout row="1">
<slot />
</GridLayout>
<NavBarComponent row="2" :section="section" />
</GridLayout>
</Page>
</template>
Home.vue
<template>
<PageFrame title="Home" section="home">
<!-- page content -->
</PageFrame>
</template>
Использование опоры section
для выделения текущей страницы на панели навигации.
person
TomG
schedule
02.07.2019