Добавление namspace в xml с использованием xmlbuilder в nodejs

Я генерирую xml в nodejs с помощью пакета xmlbulilder, теперь мое требование - добавить пространство имен в xml. например

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

как мы можем это сделать? Спасибо за помощь!

1 ответ

Я обнаружил, что вы можете сделать это с помощью кода, как показано ниже.

(() => {
    '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);
})();

Я не знаю, есть ли более явный способ установки пространства имен, но было бы разумно иметь такой способ, чтобы уменьшить избыточность.

Другие вопросы по тегам