Можно ли отправить событие раньше, чем history.push ('...')?
Да, это нормально.Все, что вам нужно сделать, это сопоставить VIEW_BLOG_POST
с новым определением события.Акция не должна менять состояние каким-либо образом.Он пройдет через редукторы, которые все вернут ссылку на предыдущее состояние.Если вы используете response-redux, это будет иметь практически нулевое влияние на производительность.Предполагая, что вы отслеживаете это как событие в GA, это будет выглядеть примерно так:
import { trackEvent } from '@redux-beacon/google-analytics';
const trackBlogPostClick = trackEvent((action, prevState, nextState) => {
return {
category: /* fill me in */,
action: /* fill me in */,
label: /* (optional) */,
value: /* (optional) */,
};
}, /* (optional) tracker names array or tracker name string */ );
// And wherever your events map is:
const eventsMap = {
VIEW_BLOG_POST: trackBlogPostClick,
}
Без реального изменения состояния, а просто для того, чтобы перехватить событие с промежуточным программным обеспечением-редуктором-маяком?
?
А как насчет внешних ссылок?Нужно ли управлять этим другим?(Я хочу избежать смешанных реализаций отслеживания)
Это во многом зависит от того, как вы хотите отслеживать их в Google Analytics.Но нет ничего плохого в том, чтобы относиться к ним одинаково с точки зрения редукс-маяка.