无法让#each在Handlebars.js中为我的对象工作

时间:2018-05-24 12:38:41

标签: typescript handlebars.js

使用以下打字稿对象:

class LinkItem {
    public LinkText: string;
    public LinkUrl: string;
}

class Link {
    public DisplayText: string;
    public LinkItems: Array<LinkItem>;

    constructor() {
        this.LinkItems = new Array<LinkItem>();
    }
}

class LinksObject {
    public Links: Array<Link>;

    constructor() {
        this.Links = new Array<Link>();
    }
}

正确的HandleBars.js语法是什么,用于迭代LinksObject中的属性以创建如下表:

enter image description here

我尝试了各种组合。 #each语法中的这个等等,并没有按预期工作。

<script id="entry-template-family-links" type="text/x-handlebars-template">
    <table class="table table-bordered table-condensed table-striped">
        <tbody>
            {{#each .}}
            <tr>
                <td>{{this}} a {{this.DisplayText}} b  {{DisplayText}} c {{this.LinkText}} d {{LinkText}}</td>
                <td>
                    <span>
                        {{#each this.LinkItems}}
                        <a target="_blank" href="{{this.LinkUrl}}">{{this.LinkText}}</a>
                        {{/each}}
                    </span>
                </td>
            </tr>
            {{/each}}
        </tbody>
    </table>
</script>

有人可以指出我正确的方向,因为我显然错过了一些明显的东西吗?

1 个答案:

答案 0 :(得分:0)

不确定你是如何将物体传递给车把的,但你试过这个吗?

{{#each Link}}