流星路线无响应

时间:2015-01-31 15:29:39

标签: javascript meteor iron-router

我有一个按钮来触发我的路线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按钮来触发路线时,没有任何反应。我有其他路线在我的应用程序上工作,但我无法弄清楚为什么这个不会让步。

1 个答案:

答案 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}}