4
目前为:
exports.io = {
init: {},
namespace: {
'/': {
connectionMiddleware: [],
packetMiddleware: [],
},
},
};
namespace这一项 我觉得应该为{}, 否则里面始终有 '/'的配置,在某些场景下,业务层也需要取这个配置
目前为:
exports.io = {
init: {},
namespace: {
'/': {
connectionMiddleware: [],
packetMiddleware: [],
},
},
};
namespace这一项 我觉得应该为{}, 否则里面始终有 '/'的配置,在某些场景下,业务层也需要取这个配置
这里的默认配置为插件的配置信息,同时也是示例,不觉得有什么问题。 业务层需要取这个配置是指?请说一下具体的场景或者用途。
因为你们的插件并不总能满足所有需求,比如我现在要取namespace里面配了哪些key,然后在这些namespace上监听connection事件,但是我业务层并没有配置'/' 这个namespace 结果却取出来了,导致了一些小问题,我认为这里的'/'的默认配置是不必要的
Socket.IO 中默认的 nsp 为 /,参见文档
但是你也要允许 我不使用默认配置吧?
Socket.IO 实例化以后存在/命名空间, 可以不使用,但这个配置是存在的如果因业务需要不使用默认命名空间,可以认为是使用问题,既然是使用问题,或许应该考虑在业务层过滤
那就是插件本身依赖这个配置,或者说插件本身为了简单而没有去处理?
有没有默认配置对于插件来说并没有影响;默认配置起到的作用一方面是配置,另一方面是示例。
这里提出的应用场景中,即使config.io不配置,通过 io对象依然可以获得默认nsp;如果一定需要通过config.io来得到nsp,自行过滤一下即可