Reactive publication in a React container

Hi, Excuse my bad english, I’ll try to be clear.
This question has been posted several times before, but there are so many different options, I can’t figure out the answer.

Let’s say in my homepage I want to show all my articles from my blog, but with the possibility to filter articles by tags.

To do that, I first create a container (HomePageContainer) using createContainer from react-meteor-data package as it is recommended from the Meteor Guide. In that container, I subscribe to my article’s publication with a parameter “filter”.
This container render a child component (HomePage) which contains 2 child components: Filter and Articles.

HomePageContainer => HomePage => Filter && Articles

When the user changes the filter, I need to pass the new filter object up to my container so it is re-render and my subscribe is updated.

After reading a lot of stuff about that: I can understand the best way of doing that is by lifting state up.

So, from my container I pass a callback function down to my filter component which is executed when the user changes filters. This function is then executed in my container and update my filter variable, which is a ReactiveDict, with the new filters. From here, I expect the container to render again but it doesn’t happen.

So if we use the createContainer as recommended in the Meteor Guide, what is the best way to use publication with a parameter set in a child component?

EDIT : here is some simplified code to illustrate my question:

const HomePageContainer = createContainer(() => {

  let filters = new ReactiveDict();
  filters.set("tags": ["travels", "food", "work"]);
  Meteor.subscribe('articles.all', { filters });
  const articles = Articles.find({}, { fields: Articles.publicFields }).fetch();

  // Changes a reactive variable, should it re-render the container?
  const onFiltersChanged = function(tags) {
    filters.set(tags);
  };

  }
  return {
    artiles,
    onFiltersChanged,
  };
}, HomePage);

How does your publication look like?
I’d suppose your problem lies with your subscription or publication.
Are you considering the filters in the publication?
But as you are subscribing to all documents you can also filter on the client and pass the filter to your Articles.find(…)

I would try wrapping Meteor.subscribe in Tracker.autorun function. Then, when changing " filters", the subscription should be updated.

In your code you are never calling filters.get(), and there are some syntax errors as well - I think it would be helpful to have a “real” code snippet because there might be some important details missing.