2016-08-30 1 views
1

Как я могу редактировать XML-файл с помощью xml2jsКак удалить и обновить XML-тег в xml2js

const fs = require('fs'); 
const xml2js = require('xml2js'); 
var fn = 'file.xml'; 
fs.readFile(fn, function(err, data) { 
    parser.parseString(data, function(err, result) { 
     //result.data[3].removeChild(); ????? 
     //result.date[2].name.innerText = 'Raya'; ????? 
    }); 
}); 

Это не работает!

+0

'data' - объект JavaScript, а не дерево DOM. См. [This] (https://github.com/Leonidas-from-XIV/node-xml2js#description). – robertklep

ответ

0

Чтобы удалить свойство из объекта JavaScript, просто установите свойство не определено:

result.name = undefined; 

Результат от xml2js:

{ 
    "name": "I will get deleted", 
    "items": [ 
     { 
      "itemName": "Item 1", 
      "itemLocation": "item1.htm" 
     }, 
     { 
      "itemName": "Item 2", 
      "itemLocation": "item2.htm", 
     } 
    ] 
} 

После установки в неопределенная:

{ 
    "items": [ 
     { 
      "itemName": "Item 1", 
      "itemLocation": "item1.htm" 
     }, 
     { 
      "itemName": "Item 2", 
      "itemLocation": "item2.htm", 
     } 
    ] 
} 

Для вас это будет

result.data[3] == undefined; 

Совет. Вы можете использовать JSON.stringify, чтобы помочь вам.