Estoy tratando de configurar una aplicación NextJS con una tienda Redux ya configurada.
La tienda Redux vive en el directorio principal de la aplicación, almacenada en una carpeta común con la tienda, las acciones, los reductores, las sagas, etc. Esto es para que al manejar el estado global en una aplicación (aplicación web y móvil), todos los archivos relacionados con Redux Store se configura una vez y se comparte en todas las plataformas (ya que también estamos usando Redux Sagas para obtener datos de forma asincrónica y actualizar el estado en consecuencia) en lugar de crear varias copias de la misma tienda Redux, las mismas acciones, reductores y sagas para cada aplicación. .
Este es mi archivo _app.tsx:
import type { AppProps } from 'next/app' /* SETUP REDUX STORE, REDUX SAGAS, REDUX PERSIST SO THAT CWP CAN GLOBALLY MANAGE STATE, HANDLE STATE ASYNCHRONOUSLY AND PERSIST STORE IN BROWSERS LOCALSTORAGE */ import { Provider } from 'react-redux' import { PersistGate } from 'redux-persist/integration/react' import _store from '../../common/store' function MyApp({ Component, pageProps }: AppProps) { const { store, persistor } = _store() return ( <Provider store={store}> <PersistGate loading={null} persistor={persistor}> <Component {...pageProps} /> </PersistGate> </Provider> ) } export default MyApp
El error que recibo al intentar ejecutar mi aplicación en localhost:3000 es
Module parse failed: Unexpected token (13:37) You may need an appropriate loader to handle this file type, currently no loaders are configured to process this file. See https://webpack.js.org/concepts#loaders | let _persistor | > export default function (initialState: AppState = {}, forceNewStore?: boolean) { | // It's very important to only return the cached store on the client, otherwise SSR will return the previous request state | // @ts-ignore
Creo que este error se debe a que intento usar un archivo fuera del directorio de aplicaciones (_store from '../../common/store.ts')
¿Cómo configuraría mi configuración de NextJS para usar este archivo Redux ya configurado?