我正在创建一个应用程序,我需要在其中实现Click To Call工具。因此,对于通信,我使用 Twilio客户端 。我试过了this example。
现在我需要它,我需要在我的Angular 2应用程序中实现相同的功能。如何在我的Typescript中导入 Twilio Client 以及如何使用它?
我正在尝试在我的组件中导入Twilio,如
import * as Twilio from 'twilio'
但这不是导入它的正确方法。
答案 0 :(得分:11)
Twilio开发者传播者在这里。现在我们没有任何TypeScript绑定,因此这样的捆绑将无法正常工作。我正在研究一些绑定,但同时我建议你使用脚本标记包含库,就像它在演示应用程序中完成的一样。您可以使用我们的Twilio CDN:
<script type="text/javascript" src="//media.twiliocdn.com/sdk/js/client/v1.3/twilio.min.js"></script>
之后你必须让TypeScript了解它。为此,您目前必须使用declare const
。不幸的是,在绑定完成之前,这不会给你任何TypeScript的类型检查的整洁,但它至少让你使用它。只需在计划使用Twilio代码的文件中添加以下行:
declare const Twilio: any;
希望有所帮助。
干杯, 多米尼克
答案 1 :(得分:1)
现在,当您从npm(https://www.npmjs.com/package/twilio-chat)安装Twilio Client Library时,它具有相应的类型定义,因此您只需编写import { Client, User } from "twilio-chat";
,然后在组件中声明Client
变量twilioClient: Client
并创建它:
Client.create(token).then(client => {
this.twilioClient = client
});
不幸的是,twilio-common没有d.ts,所以如果你想使用它,比如AccessManager,你需要这样做,所有变量都有any
类型:
let AccessManager = require('twilio-common').AccessManager;
let accessManager = new AccessManager(token);
编辑:遗憾的是,出于某种原因,开始从依赖文件中的'twilio-chat'获取缺少d.ts模块的响应,所以看起来这个lib还没有准备好与TS一起使用:(。