如何动态包含多个对象实例的Javascript

时间:2019-04-20 08:37:33

标签: javascript include

我已经用JavaScript编写了一个库,并且为了优化加载,我想将代码与必要时动态加载的文件分开。

如果我创建一个库实例,则工作正常,但是如果我创建多个实例,则没有任何效果。这是我目前使用的结构的一个小例子。

页面上的脚本实例化了一个“计算器”对象,该页面已加载了我的基本库。

然后我调用一个方法(加法)。然后,将动态加载该方法(我的“计算器”库中不存在此方法)。我使用include.js动态加载脚本。当我检查导航器的“网络”选项卡时,文件已正确加载,但功能未执行(在多实例情况下)

如果仅使用一个实例,则可以,控制台显示5。但是,如果我使用另一个实例,则没有输出,则不会触发Tools.add()方法。

非常感谢您的帮助,我尝试了很多事情,但都没有成功。我确实需要将库分成几个部分并使用它的多个实例。也许我没有正确的方法?

html主页上的代码

<script src="component.js"></script>
<script>
            var instance1 = new Calculator();
            instance1.Addition(2, 3);

            var instance2 = new Calculator();
            instance2.Addition(4, 6);
</script>

component.js

var Calculator = function () {
    this.Addition = function (a, b) {
        include(['dependency.js'], function () {
            console.log(Tools.add(a, b));
        });
    };

    this.Multiply = function (a, b) {
        console.log(a * b);
    };

};

dependency.js是动态加载的

var Tools = (function () {
    return {
        add: function (a, b) {
            return a + b;
        }
    }
})();

0 个答案:

没有答案