我正在尝试将参数从YAML文件读入到Javascript中。有没有好的图书馆来做到这一点?从Javascript中读取YAML文件
我已经试过这些库:https://github.com/nodeca/js-yaml和http://code.google.com/p/javascript-yaml-parser/
但两者库只有当它被赋予一个字符串,而不是直接解析出一个.yml或.yaml的文件,它解析YAML功能。是否有解析器从文件中读取YAML并将它们转换为JS对象?
我正在尝试将参数从YAML文件读入到Javascript中。有没有好的图书馆来做到这一点?从Javascript中读取YAML文件
我已经试过这些库:https://github.com/nodeca/js-yaml和http://code.google.com/p/javascript-yaml-parser/
但两者库只有当它被赋予一个字符串,而不是直接解析出一个.yml或.yaml的文件,它解析YAML功能。是否有解析器从文件中读取YAML并将它们转换为JS对象?
js-yaml确实。我通过谷歌搜索“node js yaml”发现了这一点,因为从JavaScript中的文件读取服务器端使用node.js(或类似的东西)完成,而不是从浏览器完成。
为JS-YAML自述开始
用法:JS-YAML [-h] [-V] [-c] [-j] [-t]文件
位置参数:
文件的文件与文件YAML(一个或多个)
这是非常强有力的证据表明它直接做过程YAML从文件。
js-yaml尽管使用了“require”调用。我对node.js或任何服务器端没有经验,对于这个项目,我只是寻找一个可以在浏览器中运行的客户端解析器。 – nsax91
我不知道读取yaml文件的任何客户端解决方案。我认为你可以做的最好的结合是在客户端JavaScript中使用文件读取技术(参见[http:// stackoverflow。com/questions/4950567/reading-client-side-text-file-using-javascript](这个问题),然后将它们与yaml字符串解析相结合。 –
如果你想在网络浏览器中解析它,你可以加载想要解析的yaml文件到script
标签中,并使用js代码读取它的内容,这会为你提供字符串结果。如果你想在nodejs环境中解析yaml,你可以直接读取文件,也可以获取字符串。我不认为这是直接解析yaml或从字符串解析yaml的问题。
这似乎很难找到一个从浏览器中使用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>
+1看起来像我会这样做,在演示文稿中显示我的YAML笔记。 – Nikos
'
有关于如何在您链接** JS-YAML的第一个库解析'* .yml'文件的多个实例** – jaime