2015-09-28 5 views
3

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

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

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