Javascript 无法使用“创建”在XML中创建CDATA节;xmlbuilder";node.js模块

Javascript 无法使用“创建”在XML中创建CDATA节;xmlbuilder";node.js模块,javascript,node.js,xml,npm,xml-builder,Javascript,Node.js,Xml,Npm,Xml Builder,我正在使用“xmlbuilder”node.js模块创建xml文件。我需要创建一个CDATA区域,如下所示: <notestext><![CDATA[{Notes Text}]]></notestext> 我参考了github,但没有找到任何有用的东西 如何使用“xmlbuilder”node.js模块在xml文件中创建这样的CDATA节 let builder = require('xmlbuilder', { encoding: 'utf-8' })

我正在使用“xmlbuilder”node.js模块创建xml文件。我需要创建一个CDATA区域,如下所示:

<notestext><![CDATA[{Notes Text}]]></notestext>

我参考了github,但没有找到任何有用的东西

如何使用“xmlbuilder”node.js模块在xml文件中创建这样的CDATA节

let builder = require('xmlbuilder', { encoding: 'utf-8' });
let xml = builder.create('Slides');
xml.ele("notestext","<![CDATA[" + element.notes_text + "]]>");
xml.end({ pretty: true });

console.log(xml.toString());
let builder=require('xmlbuilder',{encoding:'utf-8'});
让xml=builder.create('Slides');
ele(“notestext”,“notestext”);
end({pretty:true});
log(xml.toString());
来自您发布的

CDATA节点CDATA节点是使用CDATA函数创建的(也可以 缩写为dat或d)。该值不应包括CDATA 分隔符

ele.dat('this will be surrounded by CDATA delimiters');
解决方案1: 使用
.cdata
.dat
,或
.d
)方法并链接每个方法以生成XML片段。例如:

Javascript:

var builder=require('xmlbuilder');
变量元素={
注释文字:“你好,世界

” }; var xml=builder .create('slides',{version:'1.0',encoding:'UTF-8',standalone:true}) .ele('notestext') .cdata(元素.notes\u文本) .end({ 真的吗 }); log(xml);

输出


你好,世界

]>

解决方案2: 另一种编写方法与您的示例更为相似,如下所示:

<notestext><![CDATA[{Notes Text}]]></notestext>
var builder=require('xmlbuilder',{encoding:'utf-8'});
变量元素={
注释文字:“你好,世界

” }; var xml=builder.create('slides'); xml.ele('notestext').cdata(element.notes\u text); xml.end({ 真的吗 }); log(xml.toString());
注意:与上一个示例相比,此示例使用的方法链接更少,但是它确实将
cdata
方法链接到
ele
方法

这将打印以下内容:


你好,世界

]>
解决方案3: 或者,如果您不想链接任何方法,可以执行以下操作:

var builder=require('xmlbuilder');
变量元素={
注释文字:“你好,世界

” }; var rootElement=builder.create('slides'); var childElement=rootElement.ele('notestext') cdata(element.notes\u文本); rootElement.end({ 真的吗 }); log(rootElement.toString());
这也会打印与解决方案2相同的输出


其他信息: 文档对
.cdata
方法的描述如下:

<notestext><![CDATA[{Notes Text}]]></notestext>
CDATA节点

CDATA节点是使用
CDATA
功能创建的(也可以缩写为
dat
d
)。该值不应包含CDATA分隔符

ele.dat('this will be surrounded by CDATA delimiters');
ele.dat('这将被CDATA分隔符包围')



应用“dat()”方法时未发现此类方法错误。请检查它对我有用吗xmlbuilder@10.1.1节点v6.9.4 npm v3.10.10