【问题标题】:parse yaml data to browser using angularjs使用 angularjs 将 yaml 数据解析到浏览器
【发布时间】:2020-07-01 12:29:40
【问题描述】:

我有一个 yaml 文件,我希望它能够被我的浏览器网站读取。当我在浏览器控制台中运行我的函数时,我的变量 yaml 出现以下错误

TypeError: yaml is undefined

而我已经在函数中声明了它。 PFB 我的功能

function parseyam() {
   var yaml = require('js-yaml');
   var fs = require('fs');
   // Get document, or throw exception on error
   const doc = yaml.safeLoad(fs.readFileSync('services.yml', 'utf8'));
   console.log(doc);
}

我还在 index.html 中添加了 require.js,并尝试使用 require.js。我认为变量 yaml 由于需要而无法正常工作。

请指教,我该如何让它工作?

注意:当我在后端运行相同的代码时,它工作正常并且我得到数据。 有没有其他方法可以让它在前端工作?还有其他选择吗?如果有人可以在这里帮助我,将不胜感激。

【问题讨论】:

    标签: javascript angularjs yaml requirejs frontend


    【解决方案1】:

    这里的问题是 NodeJS 使用 CommonJS 模块格式,而 RequireJS 使用 AMD 模块格式。他们不兼容。有一些可能的解决方案可以解决这个问题,请前往 RequireJS 网站阅读更多内容:https://requirejs.org/docs/commonjs.html

    【讨论】:

    • 还有其他方式从浏览器端读取数据吗?除了RequireJS?在后端,我们可以使用 python(我的意思是解析 yaml 文件)。要求似乎很简单,我只需要从浏览器中读取数据。但它对我来说需要一个多星期。 :(
    • 使用github.com/jeremyfa/yaml.js.git 怎么样?他们说:“在 node.js 和所有主要浏览器下工作”所以似乎是一个不错的候选者
    猜你喜欢
    • 2012-02-21
    • 2016-09-23
    • 1970-01-01
    • 1970-01-01
    • 2021-01-05
    • 2022-01-17
    • 2015-03-05
    • 2015-12-06
    • 2015-05-14
    相关资源
    最近更新 更多