Knockout.js 淘汰脚本未命中applyBindings

Knockout.js 淘汰脚本未命中applyBindings,knockout.js,Knockout.js,我有一个相当简单的屏幕,它利用了淘汰脚本。我有一个很奇怪的问题 我已经设置了QA/Staging/Production环境,我的屏幕可以在本地和QA环境中完美地加载和运行。然而,当我将脚本和页面迁移到登台服务器时,Knockout不会命中ko.applyBinding(vm)代码。它确实在我的QA服务器上完成。我正在使用Chrome调试器工具在那一点上破坏它以进行验证 这是我的代码,少了一些函数 $(document).ready(function () { vm = new function

我有一个相当简单的屏幕,它利用了淘汰脚本。我有一个很奇怪的问题

我已经设置了QA/Staging/Production环境,我的屏幕可以在本地和QA环境中完美地加载和运行。然而,当我将脚本和页面迁移到登台服务器时,Knockout不会命中ko.applyBinding(vm)代码。它确实在我的QA服务器上完成。我正在使用Chrome调试器工具在那一点上破坏它以进行验证

这是我的代码,少了一些函数

$(document).ready(function () {
vm = new function () {

        var thisVm = this;

        this.lastName = ko.observable(),
        this.firstName = ko.observable(),
        this.dob = ko.observable(),
        this.cityList = ko.observable([])

        //Load the CityList
        this.loadCityList = function (callback) {
            var data = {};
            new ajaxJsonHelper().invoke("ServiceDelivery.aspx/GetCityList", data, vm.loadCityListCallback, showAjaxFailure, false);
        }

        this.loadCityListCallback = function (result) {
            if (result.d != null) {
               vm.cityList(result.d);
            }
        }
    }
    ko.applyBindings(vm);
 });

我相信这里有一些事情在起作用。我创建了一个示例来演示这些概念的工作原理

注意:为了清晰起见,我删除了内部代码


我相信这里有一些事情在起作用。我创建了一个示例来演示这些概念的工作原理

注意:为了清晰起见,我删除了内部代码


您是否排除了任何与基础架构相关的问题,例如您的生产环境可能有一个缓存旧文件的代理服务器?或者您是在您的计算机上完成浏览器缓存清理/刷新后尝试的?我已清除服务器和客户端计算机上的所有缓存。我可以看到那里的文件是正确的,所有函数都被命中,只是从来没有命中applyBindings。这是我见过的最奇怪的事情。很抱歉,当我说“…迁移到我的生产服务器”时,我是指登台。我编辑了我的原始帖子以反映这一点。您是说document.ready块中的其余代码正在运行?我想说,使用普通的对象实例化模式可能更好。var ViewModel=函数(){…};应用绑定(新的ViewModel());是,document.ready块中的其余代码正在运行。我可以尝试正常的实例化,奇怪的是,它在我的其他应用程序中,以及在不同的环境中,以这种方式工作。一切都在运行,但这是一个空白屏幕,因为没有任何内容绑定到元素。您是否排除了任何与基础架构相关的问题,例如您的生产环境可能有一个缓存旧文件的代理服务器?或者您是在您的计算机上完成浏览器缓存清理/刷新后尝试的?我已清除服务器和客户端计算机上的所有缓存。我可以看到那里的文件是正确的,所有函数都被命中,只是从来没有命中applyBindings。这是我见过的最奇怪的事情。很抱歉,当我说“…迁移到我的生产服务器”时,我是指登台。我编辑了我的原始帖子以反映这一点。您是说document.ready块中的其余代码正在运行?我想说,使用普通的对象实例化模式可能更好。var ViewModel=函数(){…};应用绑定(新的ViewModel());是,document.ready块中的其余代码正在运行。我可以尝试正常的实例化,奇怪的是,它在我的其他应用程序中,以及在不同的环境中,以这种方式工作。一切都在运行,但它是一个空白屏幕,因为没有任何内容绑定到元素。
var vm = function() {
  var thisVm = this;

  console.log("inside view model");
};

$(document).ready(function() {    
  ko.applyBindings(new vm());
});