我是 Node.js 新手。我正在学习express js。我想从 html 内容创建 word 文件。我正在使用 html-docs-js。 Word 在文件夹中生成。但这个词没有任何内容。单词为空。
我的代码
router.get('/:id', function(req, res){
var HtmlDocx = require('html-docx-js');
var fs = require('fs');
var html = '<p>My content<p>';
var docx = HtmlDocx.asBlob(html);
fs.writeFile('myword.docx',docx, function (err){
if (err) return console.log(err);
console.log('done');
});
res.send('File Generated in Folder');
});
使用代码后
router.get('/:id', function(req, res){
var HtmlDocx = require('html-docx-js');
var fs = require('fs');
var html = '<p>My content<p>';
var docx = HtmlDocx.asBlob(html);
fs.writeFile('myword.docx',docx, function (err){
console.log('first');
if (err) return console.log(err);
console.log('done');
res.send('File Generated in Folder');
console.log('last');
});
});
在控制台中正确打印。但文件仍然是空白。
最后我在使用以下代码时得到了解决方案。它对我来说效果很好。
fs.readFile('./index.ejs', 'utf-8', function(err, html) {
if (err) throw err;
// var docx = htmlDocx.asBlob(html);
fs.writeFile('newgenword.txt', html, function(err) {
if (err) throw err;
else{
console.log("Docx has been created");
}
});
});
这可能对某人有用..
最佳答案
fs.readFile('./index.ejs', 'utf-8', function(err, html) { if (err) 抛出错误;
// var docx = htmlDocx.asBlob(html);
fs.writeFile('newgenword.txt', html, function(err) {
if (err) throw err;
else{
console.log("Docx has been created");
}
});
});
关于node.js - html-docs.js 生成的文档为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50489409/