Используйте 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)

Извините, но на самом деле это не решает ваш конкретный вопрос, однако он обеспечивает эффективный обходной путь.

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