我尝试将 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
这里是 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>
或者,现在有一个适用于 TaskRouter JS 的 npm 包。通过安装到您的项目中来使用它:
npm install twilio-taskrouter --save
然后您可以通过像这样导入来使用 React 中的工作器:
import { Worker } from 'twilio-taskrouter';
然后你可以使用以下方法实例化一个新的worker:
const worker = new Worker(token);
请告诉我这是否有帮助。
我使用此代码,但它返回 Error fetching window.TaskRouterWorker: TypeError: c.default.create is not a function 此错误给我此错误解决方案