我在 Breeze 中创建计算值并使用 Knockout 绑定到它们时遇到问题。
我正在使用 NoDb 示例项目,可以在此处下载, Breeze 文档中的扩展实体文章是我的主要信息来源。
在 todo.datacontext.js 文件中,我进行了以下更改:(我已经包含了第一行和最后一行,以指导我将代码放置在何处)
...
configureManagerToSaveModifiedItemImmediately();
metadataStore.registerEntityTypeCtor('TodoItem', function () { }, todoItemInitializer);
function todoItemInitializer(todoItem) {
todoItem.participantName = ko.computed(function () {
return 'John' + ' ' + 'Smith';
});
};
var datacontext = {
...
在 Index.html 中,我添加了:
...
<ul data-bind="foreach: todos">
<li>
<p data-bind="text: participantName" />
<input type="checkbox" data-bind="checked: isDone" />
...
但是,我收到此错误:
检索待办事项列表时出错:无法解析绑定。消息:ReferenceError:参与者名称未定义;绑定值:文本:参与者名称
我也注意到,如果我执行这个:
metadataStore.getEntityType('TodoItem');
它告诉我这种类型不存在,即使我正在注册它。
有任何想法吗?