[SOLVED] How to fully reload application

I need to reload the App fully. The problem is that I can not change the application input parameters. What should I do ?

App

import React from 'react';
import { App, View } from 'framework7-react';
import routes from './routes';

export default function (props) {
  let f7params = {
    routes,
    reloadCurrent: true,
    ignoreCache: true,
    data: function () {
        return props;
    }
 };

  return (
    <App params={f7params}>
        <View url="/tab-view/" main  className="ios-edges" />
    </App>
   );
  };

Rendering:

  for (let i=0; i< 2; ++)
     ReactDOM.render(
        React.createElement(App, { counter: i }),
        document.getElementById('app'),
     );

Later in app

    this.$f7.data.counter 

always equals 0. I want first time 0 and second time 1

I’m wondering why do you ever need it? And why do you render app multiple times in loop?

Well, the app is in outlook running as a plug-in. I’m trying to activate pinning functionality. As of that I need to reinitialize the whole app with new mailbox item data. So counter in the example is actually the mailbox item in my real implementation and reinitialising is happening on outlook_item_change, not in an array as demonstrated. But the question remains.

Other possible solution is to initialise the app only once but then I need to send a custom event with app.emit(“outlook_item_change”). I’m not aware of how to do this in react also.

Still hard to understand like that. Can you maybe setup a minimal JSFiddle and illustrate there what you are trying to achieve!

fixed it following this thread How to get $f7 (the App object) when app loaded?