Dust onLoad 上下文始终未定义

Dust onLoad context always undefined

我在服务器端应用程序上使用 dust.js。我有一些代码如下所示:

dust.onLoad = function(tmpl, ctx, cb) {
  console.log(ctx);
};

...

dust.context(null, { layout: this.layout });
console.log('context injected');
dust.stream('testTemplate', { test: true });

输出如下所示:

context injected
undefined

当您调用 dust.context 时,它 returns 一个供您稍后使用的上下文。它不会将您提供的选项设置到任何全局对象上。

尝试将返回的上下文传递给您的 dust.stream 调用,如下所示:

var ctx = dust.context(null, { layout: this.layout });
dust.stream('testTemplate', ctx.push({ test: true }));