我试图将taskrouter.js导入到我的react应用程序中,但我不知道正确的方法。
const script = document.createElement("script");
script.src = "../library/taskrouter.js";
script.async = true;
document.body.appendChild(script)
script.onload = function() {
axios.get(url_host + '/worker/activiti')
.then((res) => {
var worker = new Twilio.TaskRouter.Worker(res);
console.log("YEET",worker)
})
};
这是我得到的错误。
Unhandled Rejection (TypeError): Cannot read property 'Worker' of undefined
答案 0 :(得分:0)
这里是Twilio开发人员的传播者。
首先,您是否已确认加载这样的脚本确实在页面上包含TaskRouter JS文件?我担心webpack(或您用来构建应用程序的任何东西)可能会对您在此处设置的脚本src造成意外的影响。或在构建项目后最终可能未引用正确的文件。
我将尝试使用以下两种方法之一来包含TaskRouter.js。可以将CDN中的TaskRouter.js文件包含在React对应用程序无法控制的范围内,位于index.html文件的<head>
中。
<script src="//media.twiliocdn.com/taskrouter/js/v1.13/taskrouter.min.js"></script>
或者,有一个npm package now available for TaskRouter JS。通过安装到项目中来使用它:
npm install twilio-taskrouter --save
您可以通过以下方式从React中使用工作程序:
import { Worker } from 'twilio-taskrouter';
让我知道是否有帮助。