Возможно ли вообще получить доступ к базовым Android (или родным) членам любого элемента пользовательского интерфейса?

Я пытался получить доступ к базовым членам Android некоторых элементов пользовательского интерфейса, и, возможно, из-за того, что я новичок в nativescript, мне не удалось получить к ним надежный доступ. Единственное, что позволяет мне получить доступ к базовым членам Android, - это ActionBar.

Простой тест находится на https://play.nativescript.org/?template=play-vue&id=3K75iv&v=7

Как вы можете заметить, страницы, метка, кнопка и ScrollView возвращают значение undefined, когда я пытался получить доступ к свойству android. Я не знаю, что делает ActionBar таким особенным, что он фактически не оправдывает моих ожиданий и возвращает собственный компонент Android. Кстати, я пытался использовать свойство nativeView, но, как я и ожидал, оно вело себя точно так же, как свойство android.

Вдобавок, почему, черт возьми, некоторым элементам требуется свойство $ el для доступа к _nativeView, а некоторым нет?

ОБНОВЛЕНИЕ. Я попытался создать обычный проект JS NativeScript, и все компоненты возвращают свойство android, как и ожидалось. Итак, похоже, проблема связана с тем, как Vue используется для NativeScript.


person toyssamurai    schedule 06.01.2020    source источник


Ответы (1)


Ваш синтаксис неверен, со ссылкой на Vue вы получите доступ к собственному члену следующим образом

this.$refs.page1.nativeView.android
person Manoj    schedule 07.01.2020
comment
Я изменил его на этот. $ Refs.page1.nativeView.android, но это не имело никакого значения. Он по-прежнему возвращает undefined: play.nativescript.org/?template=play-vue&id = 3K75iv & v = 16 - person toyssamurai; 07.01.2020
comment
Конечно, родной член не будет доступен в монтируемом событии. Вам следует дождаться загруженного события самого компонента. Например, загруженное событие страницы в основном гарантирует доступность нативного элемента всех дочерних представлений и самой страницы. - person Manoj; 07.01.2020
comment
БОЛЬШОЕ СПАСИБО! Это именно то, что мне нужно! - person toyssamurai; 07.01.2020