我有一个按钮来触发我的路线speaker
<div class='btn btn-sm' id='inspect' href="{{pathFor 'speaker'}}">inspect</div>
处理触发路由的客户端js
Router.route('speaker', {
path:'/speakers/:_id',
template: 'speaker',
data: function(){
return Speakers.findOne(this.params._id);
}
});
一个简单的模板,用于渲染数据的三个字段
<template name='speaker'>
<h1>single speaker info</h1>
<li>{{first}} {{last}} @ {{date}}</li>
</template>
但是当我点击我的inspect
按钮来触发路线时,没有任何反应。我有其他路线在我的应用程序上工作,但我无法弄清楚为什么这个不会让步。
答案 0 :(得分:2)
您的按钮是一个div作为引导按钮,但它不保留HTML锚点(链接)功能。
您需要做的是定义一个锚并将其设置为一个按钮:
<a class='btn btn-sm' id='inspect' href="{{pathFor 'speaker'}}">inspect</a>
{{#linkTo}}
中还有一个iron:router
块助手,您可以这样使用:
{{#linkTo class="btn btn-sm" route="speaker"}}inspect{{/linkTo}}