我正在实现Telerik的SideDrawer组件,并得到了一个错误JS: error TypeError:无法读取未定义的属性'showDrawer‘。我正在使用本教程https://www.nativescript.org/blog/a-deep-dive-into-telerik-ui-for-nativescripts-sidedrawer
我的XML是,
<Page xmlns:lv="nativescript-telerik-ui/listview" xmlns:sd="nativescript-telerik-ui/sidedrawer" loaded="pageLoaded" unloaded="pageUnloaded" xmlns="http://www.nativescript.org/tns.xsd" navigatedTo="onNavigatedTo"> <ActionBar title="RadSideDrawer Demo" class="action-bar" >
<ActionItem tap="toggleDrawer" ios.systemIcon="4" android.systemIcon="ic_menu_btn_add" ios.position="left" />
</ActionBar>
<sd:RadSideDrawer id="sideDrawer" drawerLocation="Left">
<!-- side drawer content -->
<sd:RadSideDrawer.drawerContent>
<StackLayout class="sidedrawer-left">
<StackLayout class="sidedrawer-header">
<Label text="Hello RadSideDrawer!" class="sidedrawer-header-brand" />
</StackLayout>
<StackLayout class="sidedrawer-content">
<Label text="Home" class="sidedrawer-list-item-text" />
<Label text="Basics" class="sidedrawer-list-item-text" />
<Label text="Options" class="sidedrawer-list-item-text" />
<Label text="Help" class="sidedrawer-list-item-text" />
<Label text="Advanced" class="sidedrawer-list-item-text" />
</StackLayout>
</StackLayout>
</sd:RadSideDrawer.drawerContent>
<!-- The main content -->
</sd:RadSideDrawer>而javascript文件是
var view = require("ui/core/view");
var drawer="";
exports.toggleDrawer = function() {
drawer.showDrawer();
};
exports.onNavigatedTo = function() {
drawer = view.getViewById(page, "sideDrawer");
};使用最新版本的tns,tns mocules,telekriki ui.我遗漏了什么?任何帮助都将不胜感激..。
发布于 2017-09-23 06:44:54
我也有这个问题;它没有发生在以前的版本中;它在ios上运行良好;只有android有问题。如果第一次执行,则没有错误,侧抽屉具有此值。但是在第二次运行中,它返回一个错误并返回“未定义”。
发布于 2018-01-18 21:30:14
在执行getViewById()之前,您需要获得对页面的引用
所以你的onNavigatingTo看起来就像
exports.onNavigatedTo = function(args) {
const page = args.object;
drawer = page.getViewById(page, "sideDrawer");
};https://stackoverflow.com/questions/46336557
复制相似问题