Как передать bindingContext в TabView верхнего уровня - PullRequest
0 голосов
/ 06 февраля 2019

Мне нужно локализовать TabViewItem title , когда TabView используется в качестве основной навигации с элементами Frame (приложение, созданное с помощью Nativescript Sidekick -> General -> TypeScript -> Tab Navigation).

Для локализацииЯ использую плагин nativescript-localize со следующей инициализацией в app.ts для использования в шаблоне:

import * as app from "tns-core-modules/application";
import { localize } from "nativescript-localize";

app.getResources().L = localize;

app.run({ moduleName: "app-root" });

И app-root.xml имеет следующее содержимое:

<TabView androidTabsPosition="bottom">
    <TabViewItem title="{{ L('catalog') }}">
        <Frame defaultPage="pages/catalog/catalog-page"></Frame>
    </TabViewItem>

    <TabViewItem title="{{ L('notifications') }}">
        <Frame defaultPage="pages/notifications/notifications-page"></Frame>
    </TabViewItem>
</TabView>

Если я использую следующую конструкцию {{ L('catalog') }} на последних страницах с инициализированной bindingContext, тогда все работает как положено.Но в TabView верхнего уровня эта конструкция не работает.Я думаю, что это потому, что не инициализирован bindingContext, но как я могу инициализировать его для TabView верхнего уровня.

Для тестирования и создания прототипов я создаю Playground - TabView верхнего уровня .В этой игровой площадке вместо плагина nativescript-localize я использую функцию, которая возвращает текст, и, как вы можете видеть, он успешно выполняется в home-page.xml, но не выполняется в app-root.xml.

1 Ответ

0 голосов
/ 06 февраля 2019

Я подозреваю, что это ошибка в крайнем случае, кажется, что выражения не обрабатываются до тех пор, пока не установлен bindingContext.

Просто объявление атрибута bindingContext в XML, похоже, решает проблему

<TabView androidTabsPosition="bottom" bindingContext=""> 

Обновленная игровая площадка

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...