If you want to switch from viewing templates, I suggest you install the iron: router package.
run
meteor add iron:router
lester create routes.js in the /lib folder
now does it step by step.
First create 1 template on myAppName/client/views/layout.html
<template name="layout"> {{> yield}} </template>
and update route.js with this code.
Router.configure({ layoutTemplate: 'layout' // here we say that layout template will be our main layout });
Now on the same .js routes create these 2 routes.
Router.route('/home', function () { this.render('home'); }); Router.route('/viewList', function () { this.render('viewList'); });
In this case, if you go to localhost:3000/home or /viewList , you will see the contents of html there.
NOTES: <header> inside templates that you do not need.
Now this is just an example, because I really don't know what your main idea is.
you call {{#each lists}} inside the home template, so what's the point with the viewList template?
Now , if you want to create individual and dynamic routes for each list, you can try this.
Router.map(function () { this.route('listViews', { path: '/listViews/:_id', waitOn: function(){ return Meteor.subscribe('lists') }, data: function(){ return Lists.findOne({_id: this.params._id}); } }); });
Now you have dynamic templates for each object in the List collection, if you go to localhost:300/listView/35dwq358ew , for example, you get a listView visualization with some data.
you can do such things in the template list
<template name="list"> <li class="list-row" id="{{_id}}">{{name}}</li> <li><a href="/listViews/{{this._id}}">Check this List in detail</a></li> </template>
and the viewList template will look like this.
<template name="viewList"> <h2>{{title}}</h2> {{informationAboutList}} </template>