Javascript 为什么不是';createViewModel是否正确绑定自定义组件?

Javascript 为什么不是';createViewModel是否正确绑定自定义组件?,javascript,knockout.js,Javascript,Knockout.js,我已经尝试构建一个简单的定制淘汰组件,作为我正在尝试做的测试的一部分。不幸的是,我似乎在数据绑定方面遇到了一些问题,这些问题看起来很相似,但是解决方案似乎并没有解决我的问题 我在下面创建了一个小示例,在这里我尝试使用这个自定义组件。此操作失败,错误如下: 未捕获引用错误:无法处理绑定“text:function(){return bookNum}” 消息:未定义bookNum 这个问题似乎与上下文绑定有关,如果我将HTML绑定更改为包含$parent,那么它就可以工作了,但显然这不是必需的: &

我已经尝试构建一个简单的定制淘汰组件,作为我正在尝试做的测试的一部分。不幸的是,我似乎在数据绑定方面遇到了一些问题,这些问题看起来很相似,但是解决方案似乎并没有解决我的问题

我在下面创建了一个小示例,在这里我尝试使用这个自定义组件。此操作失败,错误如下:

未捕获引用错误:无法处理绑定“text:function(){return bookNum}” 消息:未定义bookNum

这个问题似乎与上下文绑定有关,如果我将HTML绑定更改为包含
$parent
,那么它就可以工作了,但显然这不是必需的:

<p data-bind="text: $parent.title"></p>


您应该返回ko.utils.extend函数。

@Skeeves我不确定您为什么删除了您的答案,但实际上您是正确的。您可能想把它添加回去(可能需要更多的解释)。谢谢-我简化了我问题中的情况(实际上我正在从远程文件加载组件的JS和HTML),但忘记了这将进入一个
createViewModel
函数-此时缺少的
return
语句变得更加明显。