Slide 42
Slide 42 text
import riot from 'riot';
import route from 'riot-route';
import todoRoute from './router/todo';
import todo2Route from './router/todo2';
import todo3Route from './router/todo3';
require('./tags/menu.tag');
riot.mount('menu');
route.base('/'); // ホスト名以下の部分を #hoge -> /hoge で表示するのに必要
const subRoutes = [todoRoute, todo2Route, todo3Route];
for (const subRoute of subRoutes) {
subRoute('div#main');
}
route('', () => {
route('/todo');
})
route.start(true);
// ./router/todo.js
import riot from 'riot';
import route from 'riot-route';
require('../tags/todo.tag'); // 直接マウントはしない
export default function(mainSelector) {
const todoRoute = route.create();
todoRoute('/todo', () => {
riot.mount(mainSelector, 'todo');
});
return todoRoute;
}