0
プロビジョニングが解決されたら関数のthenをトリガーするのに問題があります。下のコードでは、nunjucksコールバックのconsole log
のhtmlが表示されているので、その点までうまくいきます。しかし、呼び出し関数のthen
には何も戻ってこない。 問題は何ですか?前もって感謝します!プロミスは解決していますが、ノードの.then()関数をトリガーしません。
function generate(data, schema, partials) {
var formTitle = schema.title;
var defered = q.defer();
nunjucks.render('test.html', { formTitle: formTitle },function(err,
html) {
if (err) {
console.log('nunjucks error ', err);
return defered.reject();
}
console.log('nunjucks render ok..', html); // html logging fine here
// This seems not to work
q.resolve(html);
});
return defered.promise;
}
これは関数呼び出しです。
formTemplater.generate(data, schema, {
header: fs.readFileSync('./header.html', 'utf8'),
footer: fs.readFileSync('./footer.html', 'utf8')
}).then(function(html) {
// nothing works here
console.log('nunjucks back with html :: ', html);
fs.writeFileSync('./results.html');
});
ありがとう:
がこのであるべき。私はdefered.resolve()を試してみましたが、私は打ち間違えてしまったと思うので、うまくいきませんでした。しかし、もう一度試してトリックをやった。乾杯! – mikeym