【发布时间】:2018-07-29 21:17:24
【问题描述】:
我已下载 tracking.js 并将其添加到我的 /src/assets 文件夹中
在我的 angular-cli.json 文件中,我已添加到我的脚本中:
“脚本”:[ “../src/assets/tracking/build/tracking-min.js” ],
- issue here - 在我的角度组件中,我导入跟踪如下:
从“跟踪”导入跟踪;
在 chrome 检查窗口中,我可以将鼠标悬停在“跟踪”上并查看所有属性,如下所示:
我什至可以在控制台窗口中调用 ColorImage 构造函数! :
但是,当它尝试在我的代码中执行构造函数时,我收到关于未定义跟踪的错误:
我以为这是因为我没有以传统的 DI 方式通过构造函数传入跟踪对象,但是这样做时我得到了命名空间不能用作类型的错误:
我唯一能想到的另一件事是尝试在主 index.html 文件中添加外部引用,但我收到关于严格 MIME 检查的错误。
澄清一下:这一切都发生在我的角度组件构造函数中(当跟踪方法得到执行时)
有什么想法吗?
【问题讨论】:
-
因为tracking没有导出模块。在这里找到更多信息:github.com/eduardolundgren/tracking.js/issues/177
-
我不太了解 CommonJS 与 ES6,但根据您的链接,我还发现了这个关于导出模块的特定 tracking.js 问题:github.com/eduardolundgren/tracking.js/issues/206 我想我现在的问题是什么我应该使用'module.exports = window.tracking'或'export default window.tracking'这一行吗?我是否必须将此添加到我的“tracking.js”文件以及缩小版本的底部? tracking.js 文件有很多函数(`(function(window, undefined) {..}) '),它们都需要在每个函数的末尾导出吗?
-
不,只导出 window.tracking 。您可以使用此“window.tracking”对象访问所有其他功能。
标签: javascript angular