1

上个月我使用 react native 构建的一个应用程序突然停止工作,并在运行时开始显示白屏react-native run-ios。有时模拟器会显示一个黄色框,上面写着Possible Unhandled Promise Rejection,但除此之外,我看不到任何错误。这个问题发生在我正在处理的分支和 master 分支中,这在最后一次提交时绝对是稳定的。

这些是我目前拥有的依赖项:

"axios": "^0.17.1",
"base-64": "^0.1.0",
"firebase": "^4.8.1",
"query-string": "^5.0.1",
"react": "16.0.0",
"react-native": "0.51.0",
"react-native-dotenv": "^0.1.0",
"react-native-linear-gradient": "^2.4.0",
"react-navigation": "^1.0.0-beta.22",
"react-redux": "^5.0.6",
"redux": "^3.7.2",
"redux-persist": "^5.4.0",
"redux-thunk": "^2.2.0"

有没有人对如何克服这个障碍有任何建议?或者任何有助于调试的工具?我真的很感激任何人都可以提供的帮助。

JS 调试器错误截图

4

1 回答 1

0

我相信我找到了解决方案。redux-persist依赖项发生了错误。

在我的 Redux reducer 中,我遇到了这种情况:

export default (state = INITIAL_STATE, action) => {
switch (action.type) {

    case 'persist/REHYDRATE': {
        if (action.payload.auth) {
            const { access_token, refresh_token, expiration } = action.payload.auth;
            return {
                ...state,
                access_token: access_token,
                refresh_token: refresh_token,
                expiration: expiration,
            };
        } return state;
    }

    // other cases
}

但由于某种原因,补液没有有效载荷(因此出现错误Cannot read property "Auth" of undefined)。

我注释掉了这个案例,使用 重新加载了我的模拟器cmd-R,一切似乎又恢复了!我不完全确定为什么这解决了问题,所以如果有人有任何想法,请务必随时分享。

于 2018-01-20T22:27:02.610 回答