我正在调用以下构造函数:
deck.tracker = new ActivityTracker();
如果我在同一文件/上下文中对此进行定义,则所有过程都将通过:
function ActivityTracker() {}
但是我一动手
function ActivityTracker() {}
到一个单独的文件,并在另一个文件被调用之前将其包括在内,范围将中断。如何在不更改此行的情况下解决此问题:
deck.tracker = new ActivityTracker();
注意:导入必须是有条件的:if(window.location.href.indexOf(“ http://0.0.0.0”)== 0 || window.location.href.indexOf('http://local' )== 0){然后导入}。
因此无法使用只能是顶级的导入/导出。
答案 0 :(得分:0)
您只需要先导入它即可
在单独的文件中:
function ActivityTracker() {}
export ActivityTracker;
在您的主文件中:
import { ActivityTracker } from "./separateFile";
deck.tracker = new ActivityTracker();
答案 1 :(得分:0)
您最好的选择是使用javascript es6 modules并从另一个文件导入功能。
在主文件中:
import { ActivityTracker } from 'somefileurl'
deck.tracker = new ActivityTracker();
然后在包含ActivityTracker
函数的文件中:
function ActivityTracker() {}
export ActivityTracker