0
我已经在Angular的各种服务中使用了很多$ http模块,但是想要将它与Mulesofts RAML分析器集成在一起。这将使我不必更新角度的某些部分以符合RAML规范。Angular.js与浏览器内RAML语法分析器的集成
有没有人这样做?什么是必需的步骤?
如果这是不可能的,我猜测它只是使用RAM资源中描述的REST资源的$ resource模块没有太多的工作。
我已经在Angular的各种服务中使用了很多$ http模块,但是想要将它与Mulesofts RAML分析器集成在一起。这将使我不必更新角度的某些部分以符合RAML规范。Angular.js与浏览器内RAML语法分析器的集成
有没有人这样做?什么是必需的步骤?
如果这是不可能的,我猜测它只是使用RAM资源中描述的REST资源的$ resource模块没有太多的工作。
将任何库集成到AngularJS中是完全可能的。
在你的情况下,它甚至更简单 - RAML模块将使用$q.when
来承担Angular将使用的承诺,该承诺将免费为您处理整个摘要循环集成问题。
的错构瘤解析器使用,如:
//example from the documentation
RAML.Parser.loadFile('http://localhost:9001/myAPI.raml').then(function(data) {
console.log(data)
}, function(error) {
console.log('Error parsing: ' + error);
});
所有你需要做的是很好地发挥与角度的包装与$q.when
这需要照顾融入消化周期:
$.when(RAML.Parser.loadFile('http://localhost:9001/myAPI.raml')).then(function(data) {
$scope.someProp = data;
}).catch(function(error) {
throw error; //Angular promises log when you use throw instead of $q.reject
});
当然,对于干净的Angular代码 - 您应该将其提取到服务中。
关键的是,无论是肾错构瘤模块和角度使用承诺/ A +投诉实施的承诺,因此它是极其简单的结合起来。 RAML使用Q
,Angular使用名为$ q的触摸版本。
谢谢,但目前在解析器中似乎没有任何内容。我会看看api-designer,看看它们是如何生成代码的(从raml生成API测试的代码) – Nikos