1

我在我的应用程序中使用了 knockout.js 插件。我有可观察的问题。我创建了一个示例小提琴。在这个小提琴中,我在每次添加新菜单时Menus动态创建并生成。Menu sequence用户可以删除任何现有的菜单,除了第一个。

当用户删除任何现有菜单时,就会出现问题。因为在删除时我正在更新删除函数中的序列号,但序列号没有更新。有人可以告诉我有什么问题吗?

4

2 回答 2

1

解决方案:小提琴

修改的:

newMenuVM.Sequence = ko.observable(self.menus().length+1);

self.menus()[i].Sequence(i+1);

删除:

self.courseOptions.push(newMenuVM);

原因:

当我运行你的小提琴时,我看到一个错误“对象# 的属性'序列'不是函数”。

我搜索此属性并查看:

newMenuVM.Sequence = self.menus().length+1;

所以,我添加了 ko.observable函数。

于 2012-10-19T05:09:12.650 回答
1

您正在重新定义 Sequence 变量。最初它是一个 ko.observable。您将其设置为整数值。你应该这样设置值

newMenuVM.Sequence(self.menus().length+1);

这将允许 observable 通知和更新屏幕上的值。

于 2012-10-19T05:13:52.143 回答