RequireJS d3 library fix

Hoje me deparei com alguns problemas ao tentar carregar a biblioteca d3.js usando Require.js , principalmente todos os meus Require.js chamados scripts / módulos lançariam erro de tipo indefinido ao tentar chamar o objeto d3, mesmo com todas as dependências requeridas em ordem . Realmente não sei porque, desde que eu saiba, a biblioteca d3 é compatível com amd.

Qualquer um, eu consertei o problema com um hack de inicialização como este:



shim: {


'd3': {


exportações: 'd3',


init: function () {


window.d3 = d3;


}


},


}


</pre>


Do ponto de vista de Require, isso é bom ou ruim? Não tenho a menor idéia de que sou novo no amd stuff, tudo que sei é que funciona, então se você tem uma lib que precisa ser tratada pelo Require.js e a modulação dá problemas, verifique se a biblioteca anexa o objeto / função a janela ou objeto de documento e tente repetir a ação dentro do registro de dependência shim Require.js de sua biblioteca, função init com mais precisão.