带nativescript的有角ng-template确实很奇怪

时间:2018-11-18 09:55:20

标签: nativescript nativescript-angular

很抱歉,标题不是那么具体,但从有角度的+ NS开始,我经历了如此奇怪的异常行为,这真使我感到惊讶。

那行得通

<StackLayout>
    <ListView [items]="items" class="list-group">
        <ng-template let-item="item">
             <Label [nsRouterLink]="['/item', item.id]" [text]="item.name" class="list-group-item"></Label>

        </ng-template>
    </ListView>
</StackLayout>

那行不通,不行 :(没有得到具体的异常消息,只是getView调用失败了...非常感谢...)

<StackLayout>
    <ListView [items]="items" class="list-group">
        <ng-template let-item="item">
            <Label [nsRouterLink]="['/item', item.id]" [text]="item.name" class="list-group-item"></Label>
                <b>shit</b>           
        </ng-template>
    </ListView>
</StackLayout>

部分有效 :(这里没有例外,但粗体字不可见)

<ListView [items]="items" class="list-group">
    <ng-template let-item="item">
        <StackLayout> <Label [nsRouterLink]="['/item', item.id]" [text]="item.name" class="list-group-item"></Label>
            <b>shit</b>
        </StackLayout>
    </ng-template>
</ListView>

为什么在这种令人困惑的情况下导致这些代码?

我对列表视图的理解不够吗?我在这里想念什么?

可能的情况是,在与NS一起使用的ng-template中似乎不允许使用html标记(例如,粗体标记),但是使用按钮/日期选择器NS_angular组件也不起作用,并导致getView中出现异常... < / p>

更新1

好吧,我刚刚发现我不能在ng-template中放置多个元素,否则所有东西都会崩溃哦,这是多么糟糕的工具行为!

将StackPanelLayout放置在Label和Button周围,然后将其呈现!

我认为使用NS + angular可以使用我以前使用过的angular进行编码,并且周围有一个NS包装器不会打扰我。但是似乎我必须学习很多NS知识,并且几乎不投入任何角度知识,这令人失望。

1 个答案:

答案 0 :(得分:0)

我建议您通读{N}文档的基础知识,以避免造成进一步的混乱。

您的应用程序完全是本地的,因此您不能使用Web浏览器特有的HTML标签。您必须使用标准的{N} UI窗口小部件,以使文本变为粗体,必须使用fontWeight属性或CSS中的font-weight。如果您希望文本的一部分为粗体,则可以使用FormattedString