Используйте xml2js в браузере
Есть ли пример того, как включить xml2js на страницу браузера?
По xml2js https://github.com/Leonidas-from-XIV/node-xml2js/issues/215:
"с последними изменениями, xml2js должен нормально работать в браузере.
Простое включение не работает:
<script type="text/javascript" src="/dist/xml2js.js"></script>
как это генерирует ошибку
Uncaught ReferenceError: require is not defined
Это вопрос запуска browserify для создания одного файла для включения?
1 ответ
Теоретически browserify
Это должно работать так, как описано на https://github.com/Leonidas-from-XIV/node-xml2js/issues/277 ("pietersv прокомментировал 2 ноября 2017 года").
Цитируя это:
Добавьте следующие два скрипта в package.json и запустите их после запуска теста npm:
"browserify": "browserify ./xml2js.js -s xml2js -o ./xml2js.js",
"minify": "cat ./xml2js.js | uglifyjs > ./xml2js.min.js"
в HTML
<script type="text/javascript" src="/path/to/xml2js.min.js"></script>
<script>
var xml = '<?xml version="1.0" encoding="UTF-8"?><note>Lorem ipsum dolor sit amet...</note>'
var obj = xml2js.parseString(xml, function(err, res) { ... })
</script>
Однако на сегодняшний день (30.7.18) это не работает с текущей версией (0.4.19), как указано в последующем комментарии (мной!).
Вместо этого я использовал https://www.npmjs.com/package/xml-js и браузер его (в package.json
является:
"buildxml2js": "./node_modules/.bin/browserify ./node_modules/xml-js/dist/xml-js.js -o ./public/lib/xml-js.js")
и это работает шарм. После построения как ./public/lib/xml-js.js
DIR добавить это в HTML:
<script type="text/javascript" src="/lib/xml-js.js"></script>
А затем позвоните с:
xml2json(the_xml)
а также
json2xml(the_json)
Извините, но на самом деле это не решает ваш конкретный вопрос, однако он обеспечивает эффективный обходной путь.