Mimosa.io | inclusive tomada.io biblioteca de cliente com require.js
Pergunta
Atualmente, estou carregamento de soquete.io biblioteca de cliente automático de URL, desde que:
requirejs.config({
urlArgs: "b=" + ((new Date()).getTime()),
baseURL: "/javascripts/",
paths: {
/*other libaries here*/
io: "/socket.io/socket.io"
},
shim: {
"io" : {exports: "io"}
}
});
Isso funciona, no entanto não usar mimosa reduzir capacidades como ele não pode localizar o arquivo local.Ele também me dá um chato de erro no arranque.
2:37:34 - Dependency [[ /socket.io/socket.io ]] for path alias [[ io ]], inside file [[ dr/public/javascripts/common.js ]], cannot be found.
12:37:34 - Dependency [[ io ]], inside file [[ dr/public/javascripts/app.rq.js ]], cannot be found.
12:37:34 - Shim path [[ io ]] inside file [[ dr/public/javascripts/common.js ]] cannot be found.
É o socket.io.js libary disponível na tomada.io npm pacote, por exemplo, então eu só posso incluí-la como um caminho de arquivo?Eu também tentei instalar o soquete.io cliente libary através de bower e, em seguida, incluindo, mas que não funcionam corretamente.
Solução
Discussão detalhada pode ser encontrada aqui:
https://github.com/dbashford/mimosa/issues/338#issuecomment-31974008
Em resumo:
O problema foi que a npm e bower versão do soquete.io eram diferentes;causando estranho problemas.
Não é uma solução ideal, mas funciona para agora:
Eu ainda gostaria que houvesse uma maneira de obter o arquivo de socket.io fornece automaticamente em /socket.io/socket.io - quero dizer, ele deve existir em algum lugar no node_modules/socket.io pasta.