Functions are not being invoked in ionic for second time












0














In my ionic app, I have 2 tabs called applied and rejected. When I first navigate to the appliedPage the method in a constructor is called and it is showing the output, same to the RejecedPage. But when I go the third page and click on apply/reject button then the changes should reflect on either AppliedPage or RejectedPage. But hereafter clicking on the apply or reject, when I navigate to the applied or rejected page the Http in the constructor is not being called. Whenever I open a particular page that page should automatically call a method (from where I retrieve the data from DB using http). How can I do it?



constructor(public navCtrl: NavController, public navParams: NavParams,
private getAppliedlist: ActionsProvider)
{

console.log('fetching data`);
this.getAppliedlist.getAppliedList().subscribe((data: any) => {
this.applied = data;
console.log(this.applied);
})
}


This above code is from the AppliedPage.










share|improve this question
























  • I have updated the question. When I open the applied page It does not fetch the data and also does not display console o/p : as fetching data
    – raj_tx
    Nov 17 '18 at 13:29
















0














In my ionic app, I have 2 tabs called applied and rejected. When I first navigate to the appliedPage the method in a constructor is called and it is showing the output, same to the RejecedPage. But when I go the third page and click on apply/reject button then the changes should reflect on either AppliedPage or RejectedPage. But hereafter clicking on the apply or reject, when I navigate to the applied or rejected page the Http in the constructor is not being called. Whenever I open a particular page that page should automatically call a method (from where I retrieve the data from DB using http). How can I do it?



constructor(public navCtrl: NavController, public navParams: NavParams,
private getAppliedlist: ActionsProvider)
{

console.log('fetching data`);
this.getAppliedlist.getAppliedList().subscribe((data: any) => {
this.applied = data;
console.log(this.applied);
})
}


This above code is from the AppliedPage.










share|improve this question
























  • I have updated the question. When I open the applied page It does not fetch the data and also does not display console o/p : as fetching data
    – raj_tx
    Nov 17 '18 at 13:29














0












0








0







In my ionic app, I have 2 tabs called applied and rejected. When I first navigate to the appliedPage the method in a constructor is called and it is showing the output, same to the RejecedPage. But when I go the third page and click on apply/reject button then the changes should reflect on either AppliedPage or RejectedPage. But hereafter clicking on the apply or reject, when I navigate to the applied or rejected page the Http in the constructor is not being called. Whenever I open a particular page that page should automatically call a method (from where I retrieve the data from DB using http). How can I do it?



constructor(public navCtrl: NavController, public navParams: NavParams,
private getAppliedlist: ActionsProvider)
{

console.log('fetching data`);
this.getAppliedlist.getAppliedList().subscribe((data: any) => {
this.applied = data;
console.log(this.applied);
})
}


This above code is from the AppliedPage.










share|improve this question















In my ionic app, I have 2 tabs called applied and rejected. When I first navigate to the appliedPage the method in a constructor is called and it is showing the output, same to the RejecedPage. But when I go the third page and click on apply/reject button then the changes should reflect on either AppliedPage or RejectedPage. But hereafter clicking on the apply or reject, when I navigate to the applied or rejected page the Http in the constructor is not being called. Whenever I open a particular page that page should automatically call a method (from where I retrieve the data from DB using http). How can I do it?



constructor(public navCtrl: NavController, public navParams: NavParams,
private getAppliedlist: ActionsProvider)
{

console.log('fetching data`);
this.getAppliedlist.getAppliedList().subscribe((data: any) => {
this.applied = data;
console.log(this.applied);
})
}


This above code is from the AppliedPage.







angular typescript ionic-framework ionic2 ionic3






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Nov 17 '18 at 13:29

























asked Nov 17 '18 at 13:19









raj_tx

297




297












  • I have updated the question. When I open the applied page It does not fetch the data and also does not display console o/p : as fetching data
    – raj_tx
    Nov 17 '18 at 13:29


















  • I have updated the question. When I open the applied page It does not fetch the data and also does not display console o/p : as fetching data
    – raj_tx
    Nov 17 '18 at 13:29
















I have updated the question. When I open the applied page It does not fetch the data and also does not display console o/p : as fetching data
– raj_tx
Nov 17 '18 at 13:29




I have updated the question. When I open the applied page It does not fetch the data and also does not display console o/p : as fetching data
– raj_tx
Nov 17 '18 at 13:29












1 Answer
1






active

oldest

votes


















1














Instead of doing it within the constructor, you should make use of the ionic lifecycle functions. In this case, the ionViewWillEnter function will be perfect



According to the docs, it is called:




when entering a page, before it becomes the active one. Use it for tasks you want to do every time you enter in the view (setting event listeners, updating a table, etc.).




ionViewWillEnter() {
console.log('fetching data`);
this.getAppliedlist.getAppliedList().subscribe((data: any) => {
this.applied = data;
console.log(this.applied);
})
}





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%2f53351646%2ffunctions-are-not-being-invoked-in-ionic-for-second-time%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









    1














    Instead of doing it within the constructor, you should make use of the ionic lifecycle functions. In this case, the ionViewWillEnter function will be perfect



    According to the docs, it is called:




    when entering a page, before it becomes the active one. Use it for tasks you want to do every time you enter in the view (setting event listeners, updating a table, etc.).




    ionViewWillEnter() {
    console.log('fetching data`);
    this.getAppliedlist.getAppliedList().subscribe((data: any) => {
    this.applied = data;
    console.log(this.applied);
    })
    }





    share|improve this answer


























      1














      Instead of doing it within the constructor, you should make use of the ionic lifecycle functions. In this case, the ionViewWillEnter function will be perfect



      According to the docs, it is called:




      when entering a page, before it becomes the active one. Use it for tasks you want to do every time you enter in the view (setting event listeners, updating a table, etc.).




      ionViewWillEnter() {
      console.log('fetching data`);
      this.getAppliedlist.getAppliedList().subscribe((data: any) => {
      this.applied = data;
      console.log(this.applied);
      })
      }





      share|improve this answer
























        1












        1








        1






        Instead of doing it within the constructor, you should make use of the ionic lifecycle functions. In this case, the ionViewWillEnter function will be perfect



        According to the docs, it is called:




        when entering a page, before it becomes the active one. Use it for tasks you want to do every time you enter in the view (setting event listeners, updating a table, etc.).




        ionViewWillEnter() {
        console.log('fetching data`);
        this.getAppliedlist.getAppliedList().subscribe((data: any) => {
        this.applied = data;
        console.log(this.applied);
        })
        }





        share|improve this answer












        Instead of doing it within the constructor, you should make use of the ionic lifecycle functions. In this case, the ionViewWillEnter function will be perfect



        According to the docs, it is called:




        when entering a page, before it becomes the active one. Use it for tasks you want to do every time you enter in the view (setting event listeners, updating a table, etc.).




        ionViewWillEnter() {
        console.log('fetching data`);
        this.getAppliedlist.getAppliedList().subscribe((data: any) => {
        this.applied = data;
        console.log(this.applied);
        })
        }






        share|improve this answer












        share|improve this answer



        share|improve this answer










        answered Nov 17 '18 at 13:33









        user184994

        11k11828




        11k11828






























            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.





            Some of your past answers have not been well-received, and you're in danger of being blocked from answering.


            Please pay close attention to the following guidance:


            • 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%2f53351646%2ffunctions-are-not-being-invoked-in-ionic-for-second-time%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

            Biblatex bibliography style without URLs when DOI exists (in Overleaf with Zotero bibliography)

            ComboBox Display Member on multiple fields

            Is it possible to collect Nectar points via Trainline?