2

我正在开发一个 React Native 应用程序,但由于某些原因,我的 redux devtools 无法检测到商店。

这是 store.js 的代码

import { createStore, applyMiddleware, compose } from 'redux';
import createSagaMiddleware from 'redux-saga';

import jobs from './reducers/jobs';
import { watcherSaga } from './sagas';

// Saga Middleware
const sagaMiddleware = createSagaMiddleware();
const composeEnhancer = window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ || compose;
let store = createStore(jobs, composeEnhancer(applyMiddleware(sagaMiddleware)));

sagaMiddleware.run(watcherSaga);
// Enable Hot Module for the reducers
/* eslint-disable global-require */

if (module.hot) {
  //   module.hot.accept('./reducers/index', () => {
  //     store.replaceReducers(require('./reducers').default);
  //   });
}

export default store;

当我打开 chrome debugger-ui 时,我在 redux 选项卡中看到“未找到商店”。

我已经从扩展设置中提供了对文件 url 的访问权限。我不知道可能是什么问题。我尝试了几个使用中间件和 redux-tools 的商店设置,在教程中找到,但它们似乎都不起作用。我也尝试了独立应用程序,但它没有检测到任何东西,也没有检测到反应代码。我究竟做错了什么?

4

1 回答 1

1

我找到了解决方案并分享了它,以便帮助其他人。主要问题是我使用的是 expo,所以 expo 在与普通 devtools 不同的端口上运行。我没有使用 chrome,而是下载了独立的调试器,然后,多亏了这篇文章,我用正确的端口打开了调试器,这很神奇:

rndebugger://set-debugger-loc?host=localhost&port=19001
于 2019-03-06T11:22:57.660 回答