首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何解决类型错误,this.merge不是试图运行Mozart应用程序的函数?

如何解决类型错误,this.merge不是试图运行Mozart应用程序的函数?
EN

Stack Overflow用户
提问于 2013-09-17 01:11:19
回答 1查看 3.5K关注 0票数 2

我试着启动一个莫扎特的应用程序,但是没有渲染,我得到了错误.

代码语言:javascript
复制
TypeError: this.merge is not a function 
helpers = this.merge(helpers, Handlebars.helpers); data = data || {};

显然没有什么关系发生变化。没有改变模板等,所以很难看出什么是错的。已经尝试了npm的安装和重新运行,但没有结果。有人碰到这个问题了吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-09-17 01:26:38

听起来,用于预编译模板的工具栏版本与实际运行在页面上的版本不同。

具体来说,this.merge是在工具栏1.0.0 final中添加的,所以如果您的页面仍然在运行早期版本(比如1.0.0rc4),那么该方法将不存在,并且会崩溃。

您需要更新页面上使用的工具栏版本,或者删除package.json中用于模板预编译的工具栏版本。

编辑:有时也会因为NPM安装下游依赖项的方式而陷入麻烦。例如,您可以在您的"handlebars": "1.0.11"中指定package.json,但是如果另一个包依赖于package.json并使用不同的版本,那么在调用require()时加载哪个版本可能会有点麻烦。您可以通过运行npm install --production来避免这种情况,以确保跳过重复的依赖项(不管版本如何),但底线可能是“更新到最新版本并保持一致”。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18839775

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档