JSFiddle - React, Tailwind, and code Playground

by brunogc

HTML

<h1>Entendendo Revealing Pattern</h1>

JavaScript

var  Projeto  =  Projeto  ||  {};

Projeto.modulo  =   (function ($)  {      
    var config  =   {       
        umaConfiguracao:  0,
        outraConfiguracao:  2,
        metaConfiguracao: 100
    };
    var init  = function (parametros)  {       
        $.extend(config,  parametros.config);   
        console.log(config.metaConfiguracao);
    };
    var retesta = function () {
        return config.metaConfiguracao;
    };
    var xub = "oooie";
    
    return  {    
        config:  config,
        init:  init,
        xub: xub,
        retest: retesta
    };
}(jQuery));
//=====
Projeto.modulo2  =   (function ($)  {      
    var um = "Oi";
    var dois = "Tchau";
    var retesta = function () {
        console.log("~~~~~~~~~~~~~~");
        console.log(um+"~"+dois+"~~"+Projeto.modulo.retest());
        $("h1").on("click",function(){
            alert(Projeto.modulo.xub);
        });
    };
    return  {    
        retest: retesta
    };
}(jQuery));
//===============================================================
Projeto.modulo.init({     
    config:  {      
        umaConfiguracao:  1          
    }   
}); 
Projeto.modulo.config.metaConfiguracao = 5;

console.log(Projeto.modulo.config.umaConfiguracao);  console.log(Projeto.modulo.config.outraConfiguracao);
console.log(Projeto.modulo.config.metaConfiguracao);

console.log(Projeto.modulo.xub);
Projeto.modulo.xub = "nhaca nhaca";

console.log(Projeto.modulo.retest());
//=================================================================
Projeto.modulo2.dois = "Tchau mesmo"; //não funfa
Projeto.modulo2.retest()