带把手的Prismic.io

时间:2017-03-10 04:40:25

标签: node.js handlebars.js prismic.io

我试图将prismic.io整合到一个现有的项目中,我使用把手作为模板引擎。

以下是如何使用Prug.io文档中的Pug渲染视图的示例:

div.welcome
    img(src=pagecontent.getImage('page.image').url, class='star')
    != pagecontent.getStructuredText('page.title').asHtml(ctx.linkResolver)
    != pagecontent.getStructuredText('page.description').asHtml(ctx.linkResolver)

工作正常,但是当我试图在Handlebars中做这样的事情时:

{{{pagecontent.getStructuredText('page.title').asHtml(ctx.linkResolver)}}}

我收到错误:

  

错误:第13行的解析错误:...
  {{{pagecontent.getStructuredText(' p   ----------------------- ^期待' ID',得到'无效'

有没有办法可以将prismic.io与Handlebars模板引擎一起使用?

1 个答案:

答案 0 :(得分:0)

您需要将这些功能注册为Handlebars助手,否则您无法调用它们。例如:

app.engine('.hbs', expressHbs({
 defaultLayout: 'main',
 extname: '.hbs',
 layoutsDir: path.join(__dirname,'/views/layouts'),
 helpers: {

    PrismicText: (data) => {
        return PrismicDOM.RichText.asText(data, PrismicConfig.linkResolver)
    }
}
}));