如何在客户端的部分内部引用 Handlebars 部分?

How do I reference a Handlebars partial inside of a partial on the client?

背景

我有两个偏音,'Post' 和 'Subject'。帖子可以有很多主题,我正在尝试使用把手创建新帖子。帖子使用每个循环来呈现每个主题。

{{#each subjects}}
    {{> subject}}
{{/each}}

主题如下:

<li class="post-subject">{{postSubject}}</li>

具体问题

当我传递这样的对象时,我收到 error找不到部分主题”:

// Subjects come in this form
let subs = [{"postSubject": "Avengers: Endgame"},
            {"postSubject": "Avengers: Infinity War"}];

let postObj = {
    postContent: "some_string",
    timestamp:   "some_string",
    subjects:    subs
};

此功能:

let newPost = Handlebars.templates.post(postObj);

老实说,我不确定为什么它找不到部分主题,因为我可以将完全相同的对象数组从我的服务器传递到客户端,并且它可以很好地呈现它们。当然,为主题传递一个 [] 就可以了。我所有的部分也存储在同一个文件夹中。

我假设模板函数可以让客户端找到 'Post' 部分的存储位置,但不能找到其他部分的位置,这就是为什么它找不到主题部分的原因,但老实说我不知道知道。

如果我在某些方面含糊不清places/didn没有提供足够的信息,请随时提出任何问题。提前致谢!

摆弄了一会儿之后,我终于发现我需要使用以下方法注册部分主题:

Handlebars.registerPartial('subject', '<li class="post-subject">{{postSubject}}</li>');

我希望我可以在第二个元素中引用实际的部分,但我不确定如何引用。这虽然有效,但这就是我所需要的。