如何在Node.js中使用xml2js创建带自定义冒号标签的XML文件
如何用xml2js生成带
:loc后缀的XML标签 嘿,我来帮你搞定这个问题!要让xml2js生成你想要的<name:loc>这类带后缀的标签,其实有两种简单的实现方式,看哪种更适合你的场景:
方法1:手动修改对象属性名
xml2js默认是直接把对象的属性名当作XML标签名来生成的,所以最直接的方式就是把原对象里的每个键都改成xxx:loc的格式:
var obj = { "name:loc": "Super", "Surname:loc": "Man", "age:loc": 23 }; var builder = new xml2js.Builder(); var xml = builder.buildObject(obj);
运行这段代码,就能得到你想要的XML结构啦。
方法2:用Builder的transform配置自动处理
如果你的对象比较大,手动改属性名太麻烦,还可以利用xml2js Builder的transform选项,自动给所有标签名加上:loc后缀:
var obj = {name: "Super", Surname: "Man", age: 23}; // 创建Builder时传入transform函数,动态修改标签名 var builder = new xml2js.Builder({ transform: function(tagName) { return tagName + ":loc"; } }); var xml = builder.buildObject(obj);
这个transform函数会在生成每个XML标签的时候被调用,自动给原标签名加上后缀,不用改动原对象的结构,非常方便。
小提示:如果
:loc是XML命名空间的前缀,你可能需要额外配置命名空间声明,但从你的需求描述来看,只是单纯添加后缀的话,上面两种方法就完全够用了。
内容的提问来源于stack exchange,提问作者Testimg198
相关产品推荐
相关产品推荐

