Когда вы говорите, что вам нужно отправить действие за пределы области действия компонента, я предполагаю, что оно является реакцией на другое действие, которое было отправлено в прошлом.
В этом случае, это то, что реагирует ...админ вызывает побочный эффект .React-admin обрабатывает побочные эффекты, используя redux-saga .Вот как создать пользовательскую сагу:
// in src/bitcoinSaga.js
import { put, takeEvery } from 'redux-saga/effects';
import { showNotification } from 'react-admin';
export default function* bitcoinSaga() {
yield takeEvery('BITCOIN_RATE_RECEIVED', function* () {
yield put(showNotification('Bitcoin rate updated'));
})
}
Зарегистрируйте эту сагу в компоненте <Admin>
следующим образом:
// in src/App.js
import React from 'react';
import { Admin } from 'react-admin';
import bitcoinSaga from './bitcoinSaga';
const App = () => (
<Admin customSagas={[ bitcoinSaga ]} dataProvider={simpleRestProvider('http://path.to.my.api')}>
...
</Admin>
);
export default App;
Это задокументировано в документации поact-admin, в глава <Admin>
.