编辑
在写完答案后刚刚注意到一件事,您正在正确应用绑定,但是在函数名称之前缺少对象名称之后,这里有什么区别:
例如,
添加绑定:
ko.applyBindings(seViewModel, document.getElementById("Div"));
使用绑定:
<div data-bind="foreach: ko.utils.arrayFilter(seViewModel.ImplementationModels(), function(item) {return item.ModelType()==globalMessages.IN_A_DAY})">
<label class="checkbox-inline">
<input type="radio" group="implementationModelGroup" class="implementationModelCheck" data-bind="value: ImplementationModelId, click: seViewModel.ImplementationModelCheckBoxClick.bind($data), checked:seViewModel.ImplementationModelCheckedValue()" />
<span class="subData text-break" data-bind="text: ImplementationModelName"></span>
</label>
</div>
如果我不使用视图模型名称 seViewModel 自动完成功能不起作用
不知道为什么它不适合你,我在 VS 代码中打开了一个旧项目,它已经在工作了。它不仅为 KO 对象提供自动完成功能,还为我的 C# 类中的视图模型和控制器操作方法提供自动完成功能,我添加了一个屏幕截图以供参考
我正在添加我当前的项目设置和 vs 扩展,它可能会对你有所帮助。
VS 代码详情:
Version: 1.26.1
Commit: 493869ee8e8a846b0855873886fc79d480d342de
Date: 2018-08-16T18:38:57.434Z
Electron: 2.0.5
Chrome: 61.0.3163.100
Node.js: 8.9.3
V8: 6.1.534.41
Architecture: x64
扩展:
我添加了哪些 KO 文件:
<Content Include="Scripts\libs\knockout-3.4.0.js" />
<Content Include="Scripts\libs\knockout.mapping-latest.js" />
<Content Include="Scripts\libs\knockout.validation.min.js" />
它是ASP.NET MVC项目,KO用于模型-属性绑定。