Yesod Julius插值消息

时间:2013-10-14 21:33:14

标签: yesod hamlet

我一直在使用Yesod的消息系统来帮助保持我的语言一致。例如,我有一条名为MsgBrand的消息,它可以毫无问题地插入到Hamlet文件中。但是,我现在正在使用需要此类信息的JavaScript库。

var tour = Tour.new();

tour.addSteps([
  { element: "#some-id",
    title:   "Some Title",
    content: "_{MsgTourStepFoo}"
  }
]);

但是,_{MsgTourStepFoo}逐字出现在呈现的JavaScript代码中。换句话说,没有插值。这是正常还是我错过了什么?

1 个答案:

答案 0 :(得分:2)

这很正常。我们可以拥有朱利叶斯的i18n变体,但到目前为止已经避免它,因为它似乎比它的价值更混乱。相反,您可以使用getMessageRender来获取消息呈现功能,然后从Julius中调用它,例如:

Haskell:
messageRender <- getMessageRender

Julius:
content: "#{messageRender MsgTourStepFoo}"