metrojs中未捕获的引用错误
uncaught reference error in meteorjs
我正在尝试用metro.js构建一个应用程序。在lib
目录中,我有一个文件collections.js,看起来像:
var Datum = new Meteor.Collection('datum');
if (Meteor.isServer && Datum.find().count() == 0) {
var datum = [{...}]
_.each(datum, function(data) {
Datum.insert(data);
});
}
然后在client
目录中的.js文件中看起来像:
Template.datum.helpers({
datum: function() {return Datum.find(); }
});
当我尝试运行该应用程序时,我会得到Uncaught ReferenceError: Datum is not defined
和一个空白页面。我一辈子都搞不清楚为什么会发生这种事。有什么建议或帮助吗?我肯定是我在做一些愚蠢的事情,但我就是搞不清是什么。
删除var
关键字。
Meteor中的所有javascript文件都嵌入在(function(){...})()
模式中,因此使用var
关键字定义的所有变量都是该文件的本地变量。如果您想创建一个全局变量,对整个应用程序可见,请在不使用关键字的情况下进行创建。
所以,不是
var Datum = new Meteor.Collection('datum'); // local
应该有
Datum = new Meteor.Collection('datum'); // global
相关文章:
- gmaps4rails 2.4.6未捕获引用错误:未定义Gmaps
- Wordpress中的Javascript出现匿名函数/引用错误
- 使用dc.js、d3.js和crossfilter引用错误
- 未捕获引用错误:未定义validateform
- 为什么我会出现此错误"未捕获引用错误:未定义标题;
- $未定义-未捕获引用错误
- Sitecore”;未捕获引用错误:未定义MultilistWithSearch;
- Wordpress:未捕获引用错误:未定义速度
- Node.js引用错误:未定义类名
- 我该如何解决“;未捕获引用错误:谷歌没有定义"?(谷歌地图API)
- 调用setTimeout内部的函数时发生引用错误
- 未捕获的引用错误:未定义<映射键>
- Javascript错误:未捕获引用错误:未定义编辑
- Google可视化addListener调用函数引用错误
- Cordova:未捕获引用错误:chbrody没有使用SQLitePlugin.js定义PhoneGap
- 未捕获引用错误:未定义PrintThisPage
- 引用错误:在尝试使用ajax发送数据时未定义
- 包含的文件中引发引用错误..除非调用文件包含慢速代码
- 在表单提交按钮的点击事件中调用函数时发生引用错误
- 未捕获引用错误:幻灯片未定义