当我尝试为节点服务器构建应用程序时,我不断收到描述中的错误。
我最终试图读取 docxtemplater 的 .docx 文件,但如果没有“fs”工作,它看起来就不那么明亮。
我尝试使用在许多解决方案中看到的节点:{fs:“empty”}解决方法,但当我在浏览器上运行它时,它仍然给我相同的错误或传播到控制台。
这是我的 webpack.config.js 中的内容:
var path = require('path');
var webpack = require('webpack');
//var HtmlWebpackPlugin = require('html-webpack-plugin');
var UglifyJsPlugin = require('uglifyjs-webpack-plugin');
var DashboardPlugin = require('webpack-dashboard/plugin');
const sourcePath = path.join(__dirname, './front_end');
const buildPath = path.join(__dirname, './src/bin');
module.exports = {
devtool: 'source-map',
//home directory for webpack must be absolute
//context: sourcePath,
//Application Execution and Webpack Bundling
entry: {
js: path.join(sourcePath, 'index.js')
//html: './index.html',
},
output: {
//Must be absolute path
path: sourcePath,
//publicPath: buildPath,
//publicPath: path.join(__dirname, '/src/bin'), …Run Code Online (Sandbox Code Playgroud) 最近,我被要求制作一个工具,一旦我们向它提供数据,它就会使用给定的模板自动生成 .docx 文件。经过一番思考,我最终选择了 docxtemplater ,并且我确实生成了一个 .docx 文件,其核心代码如下:
var zip = new PizZip(content); //Using PizZip.js
var doc = new window.docxtemplater(zip);
var out = doc.getZip().generate({
type: "blob",
mimeType: "application/vnd.openxmlformats-officedocument.wordprocessingml.document",
});
saveAs(out, "output.docx"); //Using FileSaver.js
Run Code Online (Sandbox Code Playgroud)
但是,这还不够,我想创建多个 .docx 文件并将它们放入包含 zip 文件的文件中。那么如何修改上面的代码,以便生成一个包含上述“output.docx”文件和另一个 docx 文件的 .zip 文件?
我有一个对象数组,它将通过 DocXTemplater 导出到 word 文档
样本数组
[
{Name:"jon doe",age:27}
{Name:"joe roe",age:27,Address:"new jersey"}
]
Run Code Online (Sandbox Code Playgroud)
现在 DocXTemplate 将是
{#arrayVarName}{Name},{age},{Address}{/arrayVarName}
Run Code Online (Sandbox Code Playgroud)
这将输出,
Jon,27,undefined
Joe,27,new jersey
Run Code Online (Sandbox Code Playgroud)
现在我想过滤所有未定义并将它们替换为空字符串或一些自定义字符串,这如何在 DocXTemplater 中完成,或者对象数组中的所有未定义都可以替换为自定义字符串?
我正在使用https://github.com/open-xml-templated/docxtemplater
我的数据:
var person = {
name: 'Joe',
address: {
city: 'Stockholm',
postal: 45123
}
}
Run Code Online (Sandbox Code Playgroud)
如何使用这个嵌套对象在 docx 中编写语法?
这是行不通的:
{address.city}
Run Code Online (Sandbox Code Playgroud)
在文档中找不到任何示例。