没有Globals的JavaScript前端模块化

时间:2015-12-18 21:33:41

标签: javascript module requirejs closures frontend

基本上,我想要做的是让每个.js文件只包含一个闭包,然后从每个文件中导入变量和函数。

lib.js:

(function(){

  myLibFunction(){ ... };

  ...

})(); 

main.js:

(function(){

  import("lib.js");

  console.log(myLibFunction());

})();

1 个答案:

答案 0 :(得分:1)

我的解决方案是返回所需变量数组的函数。

function importVars (){
    var myValues = [all,values,here];
    return values;
};

或者您可以返回一个对象:

function importVars () {
    var myValues = {
        value1 : "property",
        value2 : "another property"
    };
    return myValues;
};

执行var MyValues = importVars()导入,然后通过编写MyValues[which_one]MyValues.value1来完成导入。 希望这有帮助!