javascript - 无法读取未定义的属性 'router'并且ko未在knockout JS中定义

标签 javascript jquery knockout.js requirejs durandal

我正在学习 Durandal 的 Knockout js 和包。 在学习本教程时 http://learn.knockoutjs.com/#/?tutorial=intro

我遇到一些错误//

这是我的 viewmodel js 文件代码 --

    function AppViewModel() {
    this.firstName = "Bert";
    this.lastName = "Bertington";
}

// Activates knockout.js
ko.applyBindings(new AppViewModel());

这是我查看html文件的代码-

<p>First name: <strong data-bind="text: firstName"></strong></p>
<p>Last name: <strong data-bind="text: lastName"></strong></p>

我收到错误 -

enter image description here

我尝试解决这些错误 - 我在代码中定义了 ko..

define(function (require) {
  var app = require('durandal/app'),
      ko = require('knockout');

function AppViewModel() {
        this.firstName = "Bert";
        this.lastName = "Bertington";
    }

    // Activates knockout.js
    ko.applyBindings(new AppViewModel());

});

我正在遵循一些教程......但我面临着一些基本的影响。可能这些错误非常基本,但我需要一些帮助..

谢谢!!

最佳答案

这应该有效

define(['plugins/router', 'knockout', 'services/logger', 'durandal/app'], function (router, ko, logger, app) {

    var AppViewModel = {
            firstName : ko.observable("Bert"),
            lastName : ko.observable("Bertington")
        }

        // Activates knockout.js
        return AppViewModel;

});

或者这个

define(['plugins/router', 'knockout', 'services/logger', 'durandal/app'], function (router, ko, logger, app) {
    var AppViewModel = function () {
        this.firstName = "Bert";
        this.lastName = "Bertington";
    }

    // Activates knockout.js
    return new AppViewModel();
});

关于javascript - 无法读取未定义的属性 'router'并且ko未在knockout JS中定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22033936/

相关文章:

javascript - 如何先加载html和css,然后加载图片、javascript等?

javascript - Knockout 不会更新使用 ko.mapping 制作的模型中的字符串数组

javascript - 如何将 json 数据导入 AngularJS 模式对话框?

javascript - 从左侧进行切换

带有 .html() 和 .append() 的 Javascript/Jquery "create"元素

Javascript 到 jquery Ajax 请求

JavaScript 问题 : setTimeout

javascript - knockoutjs 中的嵌套可观察对象

c# - 绑定(bind)不起作用,因为值未定义

javascript - 异步并等待许多对象的数组,即超过 1000 个