如何使用Angular2在Telerik的Nativescript UI中显示sideDrawer over Action Bar?

时间:2016-10-06 16:57:57

标签: javascript angular nativescript angular2-nativescript nativescript-telerik-ui

我尝试使用Angular2从Side Drawer添加Telerik's UI for Nativescript

他们有一个名为showOverNavigation的指令,它是一个布尔值,当设置为&#34时,它应该完成工作; True"价值,但它目前没有在我的项目上工作。

我会附上我的app.component.html代码,所以也许你可以帮我发现其中的任何错误。

<RadSideDrawer showOverNavigation="{{true}}>"
<StackLayout tkDrawerContent class="sideStackLayout">
    <StackLayout class="sideTitleStackLayout">
        <Label text="Navigation Menu"></Label>
    </StackLayout>
    <StackLayout class="sideStackLayout">
        <Label text="Primary" class="sideLabel sideLightGrayLabel"></Label>
        <Label text="Social" class="sideLabel"></Label>
        <Label text="Promotions" class="sideLabel"></Label>
        <Label text="Labels" class="sideLabel sideLightGrayLabel"></Label>
        <Label text="Important" class="sideLabel"></Label>
        <Label text="Starred" class="sideLabel"></Label>
        <Label text="Sent Mail" class="sideLabel"></Label>
        <Label text="Drafts" class="sideLabel"></Label>
    </StackLayout>
</StackLayout>
<StackLayout tkMainContent>
    <ActionBar class="actionBar" title="Home">
        <image src="~/res/icon.png" (tap)=openDrawer() stretch="none" ios.position="left" ></image>
    </ActionBar>
    <Label [text]="mainContentText" textWrap="true" class="drawerContentText"></Label>
    <Button text="OPEN DRAWER" (tap)=openDrawer()></Button>
</StackLayout>
</RadSideDrawer>

请告诉我有关此问题的任何其他信息。 提前致谢! =)

3 个答案:

答案 0 :(得分:1)

您正在创建angular-2项目,但您的布尔值被声明为来自NativeScript Core应用程序中的绑定模型。 也许您可以尝试直接声明您的真实值而无需绑定。

<RadSideDrawer showOverNavigation="true">

答案 1 :(得分:1)

<@> @Nick Iliev给了我答案:

“根据此问题github.com/telerik/nativescript-ui-samples-angular/issues/26,showOverNavigation目前在Angular + {N}应用中不可用。它与此帖子github.com/NativeScript/nativescript-angular/issues/394相关,因此您可能需要密切关注它。”

我想这个问题现在已经解决了。

谢谢@Nick Iliev

答案 2 :(得分:0)

截至今天,您可以通过XML或Angular代码轻松实现此行为。

来自XML

在XML视图定义中,您可以使用'subject' => $this->subject->name属性,如下所示:

showOverNavigation

来自Angular Code

除了XML之外,您还可以通过Angular代码更改行为。如果您的组件中有<RadSideDrawer [showOverNavigation]="true"> ... </RadSideDrawer> ViewChild声明,则可以设置如下属性:

RadSideDrawerComponent

假设你有这样的this.drawerComponent.sideDrawer.showOverNavigation = true; 声明:

ViewChild