5

我正在使用 xmlbulilder 包在 nodejs 中生成 xml,现在我的要求是将命名空间添加到 xml。例如

<nsA:root xmlns:nsA="namespaceA" xmlns:nsB="namespaceB">
    <nsB:nodeA attrC="valC">nodeText</nsB:nodeA>
</nsA:root>

我们怎么做呢?感谢帮助!

4

1 回答 1

6

我发现你可以通过下面的代码来完成它。

(() => {
    'use strict';

    const xmlbuilder = require('xmlbuilder');

    const doc = xmlbuilder.create('nsA:root')
      .att('xmlns:nsA', 'namespaceA')
      .att('xmlns:nsB', 'namespaceB')
      .ele('nsB:nodeA', 'nodeText')
        .att('attrC', 'valC');

    const output = doc.end({pretty: true});

    console.log(output);
})();

我不知道是否有一种更明确的方法来设置命名空间,但有一种方法可以减少冗余。

于 2016-08-08T13:01:41.903 回答