Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

152
Vistas
Kit de herramientas Redux + Signalr

¿Cuál es la mejor manera de actualizar el estado con Signalr? En este momento, envío datos dentro on devolución de llamada del método y accedo a ellos usando useSelector dentro de otro componente. Me pregunto si este es el enfoque óptimo.

 useEffect(()=> { const connection = $.hubConnection("http://xxxx/signalr", { useDefaultPath: false }) const proxy = connection.createHubProxy("exampleHub") proxy.on("action", function(data) { dispatch(setStatus(data)) } })

Slice.js:

 export const monitorSlice = createSlice({ name: "example", initialState: { status: {}, }, reducers: { setStatus(state, {payload}) => { state.status = payload } } });
about 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Su enfoque funcionará. Aquí hay otro enfoque que puede tener:

Usando su propio middleware

Otro enfoque que es más agnóstico es usar un middleware

 import { Middleware } from 'redux' import { monitorActions } from './monitorSlice'; const monitorMiddleware: Middleware = store => next => action => { if (!monitorActions.startConnecting.match(action)) { return next(action); } const connection = $.hubConnection("http://xxxx/signalr", { useDefaultPath: false }) const proxy = connection.createHubProxy("exampleHub") proxy.on("action", function(data) { dispatch(setStatus(data)) }); next(action); } export default monitorMiddleware;

Luego, dentro de su aplicación de reacción cuando desee establecer la conexión

 useEffect(()=> { dispatch(monitorActions.startConnecting()) }, [])

Luego, cuando configure su tienda, no olvide agregar su nuevo monitorMiddleware middlewareMiddleware:

 export const store = configureStore({ reducer: rootReducer, middleware: (getDefaultMiddleware) => { return getDefaultMiddleware().concat([monitorMiddleware]) }, });

Usando crear api

Otro enfoque es usar createApi .

about 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda