0

こんにちは、私はちょうどノックアウトを学んでいて、理解できない問題に直面しています。私はこのオブジェクトを持っています:

    var studentPersonalDetails = ko.observable();
    var isInitialized = false;

    var vm = {
        //bindable
        title: ko.observable('Profile'),
        dataLoading: ko.observable(false),
        hasErrors: ko.observable(false),
        errorMessage: ko.observable(''),

        //data
        profileStudentPersonalDetails: studentPersonalDetails,      

        //operations
        activate: activate

    };

    return vm;

profileStudentPersonalDetails は、サーバーからの次の C# オブジェクトに相当します。

    public int? StudentNumber { get; set; }
    public string Supervisor { get; set; }
    public bool CanEdit { get; set; }
    public string PersonId { get; set; }     
    public string FirstName { get; set; }
    public string MiddleName { get; set; }
    public string LastName { get; set; }
    public string FullName { get; set; }

私の問題は、このオブジェクトからデータにアクセスする方法を知っているので、htmlビューに表示できることです。

私はこのバージョンを試しました:

<strong data-bind="text: StudentNumber">
<strong data-bind="text: profileStudentPersonalDetails.StudentNumber">

しかし、うまくいかないようです。データは正しい方法でオブジェクトに取り込まれ、タイトルなどのデータから他のフィールドにアクセスできます。

<strong data-bind="text: title">

そして、これは機能します。

どうすればデータにアクセスできますか?

4

1 に答える 1