Как правильно определять смешанные действия в промежуточном программном обеспечении - PullRequest
0 голосов
/ 04 апреля 2019

Я использую пользовательские миксины, которые имеют внутренние действия.

Я использую промежуточное ПО вместо своих собственных действий.

Но действия миксинов попадают в промежуточное ПО.

Необходимо использоватьНекоторая проверка на утку для игнорирования действий mixin в промежуточном программном обеспечении.

Пример для Moleler-io:

if (action.name === 'io.call') {
  return next(ctx);
}

Существует ли более безопасный и надежный способ проверки действия mixin в промежуточном программном обеспечении?

1 Ответ

1 голос
/ 04 апреля 2019

Лучше всего использовать пользовательское свойство в определении действия и проверять его в промежуточном программном обеспечении.

В миксин:

actions: {
    find: {
        myFeature: true,
        handler(ctx) {}
    }   
}

В промежуточном программном обеспечении:

{
    localCall(next, action) {
        if (action.myFeature) {
            // ...
        }

        return next;
    }
}
...