JavaScript YAML Parser - PullRequest
       29

JavaScript YAML Parser

41 голосов
/ 02 декабря 2010

Я ищу синтаксический анализатор JavaScript YAML, который преобразует YAML во что-то пригодное для использования на HTML-странице. Я пробовал эту версию на Github (https://github.com/visionmedia/js-yaml), но похоже, что она работает только с node.js

Какие библиотеки мне следует использовать, и есть ли пример кода, показывающий пример использования?

Ответы [ 4 ]

30 голосов
/ 09 ноября 2011

JS-YAML Парсер работает в браузере.Вот онлайн демо http://nodeca.github.com/js-yaml/.Тем не менее, его основная цель - это node.js, а версия браузера была сделана просто для удовольствия:)

27 голосов
/ 09 декабря 2011

Вот тот, который я нашел. Не уверен, сколько из спецификаций это встречает, но это соответствовало моим потребностям.

https://github.com/jeremyfa/yaml.js

25 голосов
/ 04 апреля 2011

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

Ни один из доступных YAML-парсеров javascript не удовлетворил мои потребности, поэтому я разработал свои собственные: Это доступно здесь: http://code.google.com/p/javascript-yaml-parser/

Надеюсь, это кому-нибудь поможет:)

Cumps, Диого

5 голосов
/ 03 сентября 2015

js-yaml отлично работает в Safari, Chrome и Firefox на OSX.Вот пример:

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" lang="fr">
<head>
    <meta http-equiv="content-type" content="text/html; charset=utf-8" />
    <title>Test js-yaml</title>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
    <script src="./js-yaml/dist/js-yaml.min.js"></script>
    <script type="text/javascript">

        // YAML string to Javascript object
        var obj = jsyaml.load( 'greeting: hello\nname: world' );
        console.log( obj );

        // YAML file to Javascript object
        $.get( 'https://raw.githubusercontent.com/nodeca/js-yaml/c50f9936bd1e99d64a54d30400e377f4fda401c5/benchmark/samples/document_application2.yaml', function( data ) {
            var obj = jsyaml.load( data );
            console.log( obj );
        });

        // Huge YAML file (7.2 MB) to Javascript object
        $.get( 'https://raw.githubusercontent.com/nodeca/js-yaml/master/benchmark/samples/document_huge.yaml', function( data ) {
            var obj = jsyaml.load( data );
            console.log( obj );
        });

    </script>
</head>
<body>
<h1>Test js-yaml</h1>
<p><a href="https://github.com/nodeca/js-yaml">https://github.com/nodeca/js-yaml</a></p>
</body>
</html>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...