我在下面的代码中得到了错误'TabsViewModel is not a constructor'。我看过其他关于这个错误的帖子,但是大多数都暗示函数名在其他地方被使用,但是正如你所看到的,这是一个非常简单的例子,TabsViewModel在其他地方没有被使用。
define(['utils','ko','text!tmpl/risersandfallerstabs_partial.html','text!tmpl/errorPage_partial.html'], function(utils,ko,tmplrisersandfallerstabsStr,tmplErrStr) {
let tabsmodel = {};
$(function() {
tabsmodel = new TabsViewModel();
ko.components.register('risersandfallerstabs', {
viewModel: utils.createVM(tabsmodel),
template: tmplrisersandfallerstabsStr
});
utils.applyBindings(tabsmodel,'risersandfallerstabs');
var TabsViewModel = (function(){
let self = {};
self.test = "123";
return self;
});
});
})
为什么会出现此错误?
2条答案
按热度按时间fjaof16o1#
您尝试在TabsViewModel存在之前呼叫它。请将函式定义移至函式执行上方。
vx6bjr1n2#
我遇到了一个类似的问题,问题是我的类是一个匿名函数,而不是一个普通函数。
不起作用:
工作时间: