我目前正在通过自动网址加载socket.io客户端库,提供:
requirejs.config({
urlArgs: "b=" + ((new Date()).getTime()),
baseURL: "/javascripts/",
paths: {
/*other libaries here*/
io: "/socket.io/socket.io"
},
shim: {
"io" : {exports: "io"}
}
});但是,这是可行的,因为它找不到本地文件,所以不使用含羞草的缩小功能。它也给了我一个恼人的错误启动。
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.例如,socket.io.js libary在socket.io npm包中可用,所以我只需将其作为文件包含即可?我还尝试过通过bower安装socket.io客户端libary,然后将其包括在内,但这没有正常工作。
发布于 2014-01-12 14:15:33
详细的讨论可在这里找到:
https://github.com/dbashford/mimosa/issues/338#issuecomment-31974008
总结如下:
问题是socket.io的npm和bower版本是不同的,导致了奇怪的问题。
这不是一个理想的解决方案,但就目前而言,它是可行的:
我仍然希望有一种方法可以获得socket.io在/socket.io/socket.io中自动提供的文件--我的意思是它必须存在于node_modules/socket.io文件夹中。
https://stackoverflow.com/questions/21010732
复制相似问题