Meteor.js:如何在CollectionFS的下载链接上执行操作

Meteor.js:如何在CollectionFS的下载链接上执行操作,meteor,coffeescript,collectionfs,Meteor,Coffeescript,Collectionfs,您好,我有一个模板,其中有下载上传图像的链接: {{#each uploads}} <ul class="list-group"> <li class="list-group-item">{{original.name}} <a href="{{url download=true}}" class="btn btn-primary downloadUpload" data-uploadid="{{_id}}"&

您好,我有一个模板,其中有下载上传图像的链接:

{{#each uploads}}
            <ul class="list-group">
                <li class="list-group-item">{{original.name}} <a href="{{url download=true}}" class="btn btn-primary downloadUpload" data-uploadid="{{_id}}">Download</a></li>
            </ul>
{{/each}}
但添加事件处理程序后,单击下载链接后,我可以下载文件,但页面会断开(空白页),在控制台中检查日志时,会显示错误:

"TypeError: router.route is undefined"
然后我试着返回真值:

Template.practicalQuestionTake.events
    'click .downloadUpload': (e, template) ->
        console.log @
        true
但同样的结果,然后我尝试使用默认值

Template.practicalQuestionTake.events
    'click .downloadUpload': (e, template) ->
        e.preventDefault()
        console.log @
现在任何事情都发生了,我无法下载文件,似乎什么事情都没有发生


如何在CollectionFS下载链接的事件处理程序中执行某些操作?

嗨,我做了大量研究,然后发现问题是Iron router的问题,出于某种原因,当您有指向外部url的链接时,您的所有订阅和数据上下文都丢失,因此您会得到一个404未找到页面或“TypeError:router.route未定义”


这个问题的解决方案是:每当你有一个下载链接(Amazon S3、dropbox、CollectionFS等)时,在你的链接中使用
target=“\u blank”
。这就解决了我的问题=)

你能在
路由器路径未定义的地方发布一个客户端代码示例吗?
Template.practicalQuestionTake.events
    'click .downloadUpload': (e, template) ->
        e.preventDefault()
        console.log @