Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我使用具有内部操作的自定义 mixins。
我在自己的操作上使用中间件。
但是 mixins 的操作属于中间件。
需要使用一些鸭子类型检查来忽略中间件中的混合操作。
分子-io 的示例:
if (action.name === 'io.call') { return next(ctx); }
是否存在更安全和健壮的方法来检查中间件中的 mixin 操作?
更好的方法是在动作定义中使用自定义属性并在中间件中检查它。
在混合:
actions: { find: { myFeature: true, handler(ctx) {} } }
在中间件中:
{ localCall(next, action) { if (action.myFeature) { // ... } return next; } }