五个月前我创建了一个使用meteor windows版本0.5.x的项目,项目在那个版本的流星上效果很好,但是今天,当我迁移到版本0.6.4.1时,我遇到了项目功能问题,三个功能来自client.js调用中的model.js丢失引用(未定义的函数)。
Exception from Deps recompute: ReferenceError: displayName is not defined
(but, this function is defined in model.js)
我注意到,从浏览器控制台中,模型的每个功能都在client.js中丢失了引用。 我尝试使用命令
运行项目 meteor --release 0.5.x
但是每次尝试运行我都会收到错误“从结帐时运行流星时无法指定释放”。 未定义的引用函数会出现什么问题(在较新版本的发行版中)。
答案 0 :(得分:3)
Meteor 0.6.x改变了跨多个文件的变量范围:每个源文件都封装在一个匿名函数中,使其本地var / function声明仅对相关文件可见。 要启用导出符号并在其他文件中引用它们,您现在必须使用以下语法:
myVar=value;
// instead of
var myVar=value;
myFunc=function(){...};
// instead of
function myFunc(){...}
如果您做了类似
的事情function displayName(){...}
在model.js中,尝试用
替换它displayName=function(){...};
我很确定它能解决问题。