Best practices for passing / loading data between templates?

I think this is a hot topic right now.

There are a few schools of thought on how to load data, and pass data in Meteor and within it’s templates.

I’m trying to compile a list of strategies and maybe do a blog post to compare them.

Some strategies I’ve identified:

  1. Wrap each child template in a data template to separate data from ui.
  2. Load data at router level and pass down (mostly an anti-pattern now?)
  3. Load data at template and pass down to child templates left to right (react-like)
  4. Use session object between shared templates.

Any others? If you have code samples please share :smile: