如何在sublime 3 Javascript中使用来自不同文件的函数?

时间:2016-08-06 16:57:18

标签: javascript sublimetext3

例如,如果我的项目有一个文件夹,里面有2个文件,我如何使用另一个文件中的数据?

例:
File1.JS

var objectFromFile1={name:obj1};

File2.JS 如何在此文件中使用objectFromFile?
如何在文件2中执行objectFromFile1.name

这是崇高的3和JS
感谢

2 个答案:

答案 0 :(得分:1)

如果您在html文件中引用这两个文件并在浏览器中加载html文件,则objectFromFile1将位于全局范围内,因此文件2将能够看到它。如果您想在文件上提供抽象层,帮助您将文件分解为可供其他模块使用的模块,请查看requirejs http://requirejs.org/或类似的库。

答案 1 :(得分:0)

注意:Sublime Text不会同时识别两个文件的名称。

@Patrick回答正确。但是,如果您无法访问HTML页面,则可以使用XMLHttpRequest构造函数加载File1.js并使用Function构造函数执行其内容,并在此处大小写,objectFromFile1应在window对象中定义为脚本中的全局,例如window.objectFromFile1 = {};

// Construct the XHR object
var xhr = new XMLHttpRequest;

// Configure the XHR
xhr.get("GET", "File1.js", true);

// When the XHR change its ready state
xhr.onreadystatechange = function() {
    if(this.readyState === 4) {
        if(this.status === 200) {
            /* Success */
            (new Function(this.responseText))();
            /* Your callback goes here */
            /* Example: */
            alert(objectFromFile1.name);
        }else{
            /* Error loading the file */
        }
    }
};

// Do the request
xhr.send();