/ / Могат ли шаблони dust.js да бъдат използвани в CouchDB "show" функция? - couchdb, dust.js

Могат ли шаблони dust.js да се използват в CouchDB "show" функция? - couchdb, dust.js

dust.js е асинхронен шаблон за javascript - предавате обратна връзка на функцията "render".

CouchDB "show" функции, от друга страна, трябва действително да върне HTML.

Така че не мога да използвам dust.js в моята шоу функция! ... просто няма да работи. Как мога да заобиколя този синхронен / асинчен проблем?

РЕДАКТИРАНЕ: Трябва да мога да го направя, като използвам функцията (асинхронно) "изпращане":

function(doc,req){
var dust = require("lib/dust");
dust.renderSource("Hello, my name is {name}",{name:"Nick"},function(err,output){
send(output);
});
}

.. но това не работи, получавам това:

{"error":"render_error","reason":"function raised error: (new TypeError("dust.compile is not a function", "", 37)) nstacktrace: ("Hello, my name is {name}")@:37n("Hello, my name is {name}",[object Object],(function (err, output) {send(output);}))@:33n([object Object],[object Object])@:2napply([object Object],[object Array])@:0nrunShow(function (doc, req) {var dust = require("lib/dust");dust.renderSource("Hello, my name is {name}", {name:"Nick"}, function (err, output) {send(output);});},[object Object],[object Array])@/usr/share/couchdb/server/main.js:886n(function (doc, req) {var dust = require("lib/dust");dust.renderSource("Hello, my name is {name}", {name:"Nick"}, function (err, output) {send(output);});},[object Object],[object Array])@/usr/share/couchdb/server/main.js:989napply(null,[object Array])@:0n("_design/ibs_policies",[object Array],[object Array])@/usr/share/couchdb/server/main.js:1401napply(null,[object Array])@:0n()@/usr/share/couchdb/server/main.js:1443n@/usr/share/couchdb/server/main.js:1454n"}

Изглежда, че "dust.js" не излага всичките си функции при импортиране като модул CommonJS? Защо така? Как мога да направя тази работа?

Отговори:

1 за отговор № 1

Точно въз основа на предварителния поглед към прахаче изглежда, че dust.compile се експортира само от код, който се нарича само ако процесът е дефиниран и прозорецът не е "t. Нито ще се дефинира при стартиране под двигателя на CouchDB.