Why is the catch case called although the promise is resolved?












1















can someone help me understand why the .catch case is called although the prior promise is resolved successfully?
https://gist.github.com/defrian/fd6dd7f072754e833b60c7bd6ed45159
when the password is correct i recieve (why does it contain the “payload”: “signIn error”?)



    Array [
Object {
"type": "login_user",
},
Object {
"payload": Object {
"name": "signedUser",
},
"type": "login_user_success",
},
Object {
"payload": "Cannot read property 'dispatch' of undefined",
"type": "login_user_fail",
},
]


when I use a wrong password I recieve (as I expect)



Array [
Object {
"type": "login_user",
},
Object {
"payload": "signIn error ",
"type": "login_user_fail",
},
]









share|improve this question

























  • This is an interesting question, though I'd put the relevant codes into the question itself. The error message that you get Cannot read property 'dispatch' of undefined is very telling, could you find out where the error was thrown?

    – Derek Nguyen
    Jan 20 at 16:04











  • it seem to come from the login loginUserSuccess action creator. From the NavigationService call

    – Defrian
    Jan 20 at 17:45











  • That make sense then — it throw error after the success action was dispatched, hence you have a success user object, but the function still throws an error. So the promise was never resolved, it was rejected in both case.

    – Derek Nguyen
    Jan 21 at 13:25
















1















can someone help me understand why the .catch case is called although the prior promise is resolved successfully?
https://gist.github.com/defrian/fd6dd7f072754e833b60c7bd6ed45159
when the password is correct i recieve (why does it contain the “payload”: “signIn error”?)



    Array [
Object {
"type": "login_user",
},
Object {
"payload": Object {
"name": "signedUser",
},
"type": "login_user_success",
},
Object {
"payload": "Cannot read property 'dispatch' of undefined",
"type": "login_user_fail",
},
]


when I use a wrong password I recieve (as I expect)



Array [
Object {
"type": "login_user",
},
Object {
"payload": "signIn error ",
"type": "login_user_fail",
},
]









share|improve this question

























  • This is an interesting question, though I'd put the relevant codes into the question itself. The error message that you get Cannot read property 'dispatch' of undefined is very telling, could you find out where the error was thrown?

    – Derek Nguyen
    Jan 20 at 16:04











  • it seem to come from the login loginUserSuccess action creator. From the NavigationService call

    – Defrian
    Jan 20 at 17:45











  • That make sense then — it throw error after the success action was dispatched, hence you have a success user object, but the function still throws an error. So the promise was never resolved, it was rejected in both case.

    – Derek Nguyen
    Jan 21 at 13:25














1












1








1








can someone help me understand why the .catch case is called although the prior promise is resolved successfully?
https://gist.github.com/defrian/fd6dd7f072754e833b60c7bd6ed45159
when the password is correct i recieve (why does it contain the “payload”: “signIn error”?)



    Array [
Object {
"type": "login_user",
},
Object {
"payload": Object {
"name": "signedUser",
},
"type": "login_user_success",
},
Object {
"payload": "Cannot read property 'dispatch' of undefined",
"type": "login_user_fail",
},
]


when I use a wrong password I recieve (as I expect)



Array [
Object {
"type": "login_user",
},
Object {
"payload": "signIn error ",
"type": "login_user_fail",
},
]









share|improve this question
















can someone help me understand why the .catch case is called although the prior promise is resolved successfully?
https://gist.github.com/defrian/fd6dd7f072754e833b60c7bd6ed45159
when the password is correct i recieve (why does it contain the “payload”: “signIn error”?)



    Array [
Object {
"type": "login_user",
},
Object {
"payload": Object {
"name": "signedUser",
},
"type": "login_user_success",
},
Object {
"payload": "Cannot read property 'dispatch' of undefined",
"type": "login_user_fail",
},
]


when I use a wrong password I recieve (as I expect)



Array [
Object {
"type": "login_user",
},
Object {
"payload": "signIn error ",
"type": "login_user_fail",
},
]






firebase react-native redux jestjs redux-thunk






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Jan 22 at 11:00









skyboyer

3,66111129




3,66111129










asked Jan 20 at 14:03









DefrianDefrian

858




858













  • This is an interesting question, though I'd put the relevant codes into the question itself. The error message that you get Cannot read property 'dispatch' of undefined is very telling, could you find out where the error was thrown?

    – Derek Nguyen
    Jan 20 at 16:04











  • it seem to come from the login loginUserSuccess action creator. From the NavigationService call

    – Defrian
    Jan 20 at 17:45











  • That make sense then — it throw error after the success action was dispatched, hence you have a success user object, but the function still throws an error. So the promise was never resolved, it was rejected in both case.

    – Derek Nguyen
    Jan 21 at 13:25



















  • This is an interesting question, though I'd put the relevant codes into the question itself. The error message that you get Cannot read property 'dispatch' of undefined is very telling, could you find out where the error was thrown?

    – Derek Nguyen
    Jan 20 at 16:04











  • it seem to come from the login loginUserSuccess action creator. From the NavigationService call

    – Defrian
    Jan 20 at 17:45











  • That make sense then — it throw error after the success action was dispatched, hence you have a success user object, but the function still throws an error. So the promise was never resolved, it was rejected in both case.

    – Derek Nguyen
    Jan 21 at 13:25

















This is an interesting question, though I'd put the relevant codes into the question itself. The error message that you get Cannot read property 'dispatch' of undefined is very telling, could you find out where the error was thrown?

– Derek Nguyen
Jan 20 at 16:04





This is an interesting question, though I'd put the relevant codes into the question itself. The error message that you get Cannot read property 'dispatch' of undefined is very telling, could you find out where the error was thrown?

– Derek Nguyen
Jan 20 at 16:04













it seem to come from the login loginUserSuccess action creator. From the NavigationService call

– Defrian
Jan 20 at 17:45





it seem to come from the login loginUserSuccess action creator. From the NavigationService call

– Defrian
Jan 20 at 17:45













That make sense then — it throw error after the success action was dispatched, hence you have a success user object, but the function still throws an error. So the promise was never resolved, it was rejected in both case.

– Derek Nguyen
Jan 21 at 13:25





That make sense then — it throw error after the success action was dispatched, hence you have a success user object, but the function still throws an error. So the promise was never resolved, it was rejected in both case.

– Derek Nguyen
Jan 21 at 13:25












1 Answer
1






active

oldest

votes


















0














I found the error. It was caused by the NavigationService call.
As I am using redux-thunk I had to change it to dispatch(() => NavigationService.navigate('Home'));






share|improve this answer























    Your Answer






    StackExchange.ifUsing("editor", function () {
    StackExchange.using("externalEditor", function () {
    StackExchange.using("snippets", function () {
    StackExchange.snippets.init();
    });
    });
    }, "code-snippets");

    StackExchange.ready(function() {
    var channelOptions = {
    tags: "".split(" "),
    id: "1"
    };
    initTagRenderer("".split(" "), "".split(" "), channelOptions);

    StackExchange.using("externalEditor", function() {
    // Have to fire editor after snippets, if snippets enabled
    if (StackExchange.settings.snippets.snippetsEnabled) {
    StackExchange.using("snippets", function() {
    createEditor();
    });
    }
    else {
    createEditor();
    }
    });

    function createEditor() {
    StackExchange.prepareEditor({
    heartbeatType: 'answer',
    autoActivateHeartbeat: false,
    convertImagesToLinks: true,
    noModals: true,
    showLowRepImageUploadWarning: true,
    reputationToPostImages: 10,
    bindNavPrevention: true,
    postfix: "",
    imageUploader: {
    brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
    contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
    allowUrls: true
    },
    onDemand: true,
    discardSelector: ".discard-answer"
    ,immediatelyShowMarkdownHelp:true
    });


    }
    });














    draft saved

    draft discarded


















    StackExchange.ready(
    function () {
    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f54277222%2fwhy-is-the-catch-case-called-although-the-promise-is-resolved%23new-answer', 'question_page');
    }
    );

    Post as a guest















    Required, but never shown

























    1 Answer
    1






    active

    oldest

    votes








    1 Answer
    1






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes









    0














    I found the error. It was caused by the NavigationService call.
    As I am using redux-thunk I had to change it to dispatch(() => NavigationService.navigate('Home'));






    share|improve this answer




























      0














      I found the error. It was caused by the NavigationService call.
      As I am using redux-thunk I had to change it to dispatch(() => NavigationService.navigate('Home'));






      share|improve this answer


























        0












        0








        0







        I found the error. It was caused by the NavigationService call.
        As I am using redux-thunk I had to change it to dispatch(() => NavigationService.navigate('Home'));






        share|improve this answer













        I found the error. It was caused by the NavigationService call.
        As I am using redux-thunk I had to change it to dispatch(() => NavigationService.navigate('Home'));







        share|improve this answer












        share|improve this answer



        share|improve this answer










        answered Jan 27 at 21:57









        DefrianDefrian

        858




        858
































            draft saved

            draft discarded




















































            Thanks for contributing an answer to Stack Overflow!


            • Please be sure to answer the question. Provide details and share your research!

            But avoid



            • Asking for help, clarification, or responding to other answers.

            • Making statements based on opinion; back them up with references or personal experience.


            To learn more, see our tips on writing great answers.




            draft saved


            draft discarded














            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f54277222%2fwhy-is-the-catch-case-called-although-the-promise-is-resolved%23new-answer', 'question_page');
            }
            );

            Post as a guest















            Required, but never shown





















































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown

































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown







            Popular posts from this blog

            Callistus III

            Ostreoida

            Plistias Cous