traverson.js集成到Angular2应用程序中
traverson.js integration into Angular2 app
>有没有人成功地将traverson集成到Angular2应用程序中? 如果是这样,是否有分步可用的分步?
尝试将traverson.js集成到Angular2应用程序中,用于HATEOAS遍历。尝试拉入遍历.js根据此技术 (https://medium.com/@s_eschweiler/using-external-libraries-with-angular-2-87e06db8e5d1#.9qx93kgki)。
遇到依赖问题,从遍历对"require()"的使用开始。 典型误差:
未捕获错误:尚未加载上下文的模块名称"minilog":_。使用要求([])
还尝试使用 ngUpgrade
引入遍历角(基于 angular 1.x 的模块),并遇到了更多的依赖问题......
我设法简单地安装了遍历并在角度服务中使用它:
npm install traverson
然后,在您的服务中:
// imports
const traverson = require('traverson');
@Injectable()
export class Service {
public getData(): Observable<Data> {
const promise: Promise<Counterparty> = new Promise((resolve, reject) => {
traverson
.from('http://my-api.com')
// Add your traverson options here
.follow('link', 'other-link')
.getResource((error, data) => {
if (error) {
reject(error);
} else {
resolve(data);
});
}
return Observable.fromPromise(promise);
}
}
这里的问题是,目前还没有遍历的最新类型,因此您有一个混合的 JS/TS 代码。
我没有设法直接使用可观察量,这就是为什么我传递了一个承诺,顺便说一下,这要简单得多。
请注意,traverson 使用自己的 http 客户端。如果要使用 angular http 客户端,则需要创建一个桥接类,该类实现以下方法:
get(uri: string, options: any, callback: (err, response) => void);
del(uri: string, options: any, callback: (err, response) => void);
post(uri: string, options: any, callback: (err, response) => void);
put(uri: string, options: any, callback: (err, response) => void);
patch(uri: string, options: any, callback: (err, response) => void);
options
是遍历选项。
希望这有帮助
相关文章:
- 如何为生产构建angular2应用程序
- 在 Firebase 上部署 Angular2 应用程序
- 集成在 Angular2 应用程序谷歌地图 - 放置自动完成
- Webpacked Angular2应用程序类型错误:无法读取属性'getOptional'的未定义
- angular2应用程序的身份验证登录页面
- 无法从我的 Angular2 应用程序中连接到我的 WebSocket
- 使用 jspm 配置运行打字稿 angular2 应用程序的页面加载时出错
- traverson.js集成到Angular2应用程序中
- 在轨道中部署 Angular2 演示应用程序或作为独立应用程序部署
- 如何连接和缩小 angular2 应用程序
- Angular2如何从MVC传递应用程序配置
- Angular2在同一个页面中依次引导两个应用程序
- 在Angular2应用程序中渲染JSON对象会得到“object”对象
- 无法使用Angular2 Dart应用程序中的CSS(CSS填充程序)
- 如何知道Angular2应用程序已经完成渲染
- 如何构建Angular2应用程序?
- 一旦你的angular2应用程序与gump捆绑在一起,如何在apachehttp服务器上部署
- 可以在Ionic2/Angular2应用程序中使用HTTPS/SSL
- 将Angular2应用程序的必要依赖项上传到web主机中
- 当用户手动更改导航栏时路由 Angular2 应用程序