2012-12-09 122 views
4

我正在尝试将参数从YAML文件读入到Javascript中。有没有好的图书馆来做到这一点?从Javascript中读取YAML文件

我已经试过这些库:https://github.com/nodeca/js-yamlhttp://code.google.com/p/javascript-yaml-parser/

但两者库只有当它被赋予一个字符串,而不是直接解析出一个.yml或.yaml的文件,它解析YAML功能。是否有解析器从文件中读取YAML并将它们转换为JS对象?

+0

有关于如何在您链接** JS-YAML的第一个库解析'* .yml'文件的多个实例** – jaime

回答

7

js-yaml确实。我通过谷歌搜索“node js yaml”发现了这一点,因为从JavaScript中的文件读取服务器端使用node.js(或类似的东西)完成,而不是从浏览器完成。

为JS-YAML自述开始

用法:JS-YAML [-h] [-V] [-c] [-j] [-t]文件

位置参数:

文件的文件与文件YAML(一个或多个)

这是非常强有力的证据表明它直接做过程YAML从文件。

+0

js-yaml尽管使用了“require”调用。我对node.js或任何服务器端没有经验,对于这个项目,我只是寻找一个可以在浏览器中运行的客户端解析器。 – nsax91

+0

我不知道读取yaml文件的任何客户端解决方案。我认为你可以做的最好的结合是在客户端JavaScript中使用文件读取技术(参见[http:// stackoverflow。com/questions/4950567/reading-client-side-text-file-using-javascript](这个问题),然后将它们与yaml字符串解析相结合。 –

1

如果你想在网络浏览器中解析它,你可以加载想要解析的yaml文件到script标签中,并使用js代码读取它的内容,这会为你提供字符串结果。如果你想在nodejs环境中解析yaml,你可以直接读取文件,也可以获取字符串。我不认为这是直接解析yaml或从字符串解析yaml的问题。

5

这似乎很难找到一个从浏览器中使用js-yaml的好例子。可能是因为他们强调在node.js中使用解析器。

解析器在https://github.com/nodeca/js-yaml。使用NPM安装它

npm install js-yaml 

,并从node_modules/JS-YAML/bin目录抢JS-yaml.js文件。

这是一个快速,简单的演示,加载一个YAML文件,使用js-yaml将其解析为对象,然后(用于验证)它执行原生JSON.stringify将JSON转换为字符串并最终使用jquery $ .parseJSON来验证生成的JSON。

(function() { 
"use strict"; 
    $(document).ready(function() { 
     $.get('/common/resources/LessonContentsLv01Ln01.yml') 
     .done(function (data) { 
      console.log('File load complete'); 
      console.log(jsyaml.load(data)); 
      var jsonString = JSON.stringify(data); 
      console.log(jsonString); 
      console.log($.parseJSON(jsonString)); 
     }); 
    }); 
}()); 

和HTML

<!DOCTYPE html> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
    <title>Read YAML</title> 
       <script src="//code.jquery.com/jquery-2.1.0.js"> 
     </script><script src='/vendor/js/js-yaml.js'> 
     </script><script src='/test/readYaml.js'> 
    </script> 
</head> 
<body> 
</body> 
</html> 

Github上库https://github.com/nodeca/js-yaml

+0

+1看起来像我会这样做,在演示文稿中显示我的YAML笔记。 – Nikos

+0

'

  • 11. 读取yaml文件时发生UnrecognizedPropertyException
  • 12. 使用YAMLMATLAB读取YAML文件
  • 13. 试图从Excel文件中读取Javascript
  • 14. 从文件中读取字符串:Javascript?
  • 15. 从javascript中读取.svg文件
  • 16. 从文件中读取变量在Javascript
  • 17. 从.yaml文件
  • 18. 使用JavaScript加载yaml文件并获取yaml文件中的数据
  • 19. 如何在yaml文件中未声明从yaml文件读取的变量时引发异常?
  • 20. 在Haskell中读取YAML
  • 21. 用PHP读取Yaml
  • 22. JavaScript:读取文件夹中的文件
  • 23. 从javascript文档文件夹中读取JSON文件
  • 24. 从本地JavaScript文件中读取本地文本文件?
  • 25. 阅读java中的yaml文件
  • 26. 阅读Golang中的YAML文件
  • 27. 从jsp文件读取json与javascript
  • 28. 使用javascript从硬盘读取文件
  • 29. 的jQuery/JavaScript的路径,从文件中读取图像/文件
  • 30. 从javascript中的文件路径读取本地文件