Meteor 0.8.0更新抛出了一个“非功能”;错误

Meteor 0.8.0 update throws out a "non function" error

本文关键字:一个 功能 错误 非功能 更新 Meteor      更新时间:2023-09-26

在Meteor更新到0.8.0之后,我遇到了一些铁路由器问题,但我能够通过添加blade-layout包和更新iron-router来修复它们…

然而,现在我在浏览器控制台中得到以下错误(正常的控制台中不会抛出任何错误,只是告诉我应用程序在localhost:3000上运行)。

这是当我尝试访问主页时在浏览器控制台中得到的错误。这是在我更新到Meteor 0.8.0之后才开始发生的

Exception in defer callback: Error: Can't call non-function: [object Object]
    at Spacebars.call (http://localhost:3000/packages/spacebars.js?5d478ab1c940b6f5a88f78b8adc81a47f022da77:176:13)
    at Spacebars.mustacheImpl (http://localhost:3000/packages/spacebars.js?5d478ab1c940b6f5a88f78b8adc81a47f022da77:110:25)
    at Object.Spacebars.mustache (http://localhost:3000/packages/spacebars.js?5d478ab1c940b6f5a88f78b8adc81a47f022da77:114:39)
    at Template.__define__.HTML.DIV.class (http://localhost:3000/client/html/template.page_layout.js?b9f71b600d93464d684baf69d25d5f1c78c77785:6:22)
    at http://localhost:3000/packages/ui.js?b523ef986d3d39671bcb40319d0df8982acacfe8:2299:21
    at callWithNoYieldsAllowed (http://localhost:3000/packages/deps.js?7afb832ce6e6c89421fa70dc066201f16f9b9105:74:5)
    at _.extend._compute (http://localhost:3000/packages/deps.js?7afb832ce6e6c89421fa70dc066201f16f9b9105:212:7)
    at new Deps.Computation (http://localhost:3000/packages/deps.js?7afb832ce6e6c89421fa70dc066201f16f9b9105:144:10)
    at Object._.extend.autorun (http://localhost:3000/packages/deps.js?7afb832ce6e6c89421fa70dc066201f16f9b9105:361:13)
    at materialize (http://localhost:3000/packages/ui.js?b523ef986d3d39671bcb40319d0df8982acacfe8:2298:29) debug.js:41

如果有人遇到这个错误,请让我知道这意味着什么,并提供一个可能的解决方案。

我很感激你的帮助。

这里有一行写着错误在哪里

 at Template.__define__.HTML.DIV.class (http://localhost:3000/client/html/template.page_layout.js?b9f71b600d93464d684baf69d25d5f1c78c77785:6:22)

您应该使用blaze-layout并更改布局模板中的yield标签

旧的方式{{yield}}或{{yield 'footer'}}

a new way{{> yield}} {{> yield区域="footer"}}

https://github.com/EventedMind/blaze-layout

备选原因

模板
<template name="answer">
        <li class="answer-title">
            {{answer .. this}}
        </li>   
</template>

answer不是助手 function 时抛出错误Can't call non-function,因为该语法仅用于调用helpers并传递parameters。Ie。当答案是:

Templates.answer.helpers({
   answer: function (parentCtx, self) { return self.batman ^ !parentCtx; }
});