1

私は全体としては初めてです(Kendo UI && MVVM)。

ドロップダウンリストをローカルデータベースにバインドしようとしていますが、//<<<<<<とマークされた行にエラーがスローされます

私はここで何が間違っているのですか?--JayDataで利用できる例を見ましたが、ローカルデータベースをバインドする方法が明確にわかりません。

私のコードは次のようになります。

 <div id="wrapper">
        <div id="NESTForm">

            <select data-role="dropdownlist" data-value-field="UserID" data-text-field="Name"
                data-bind="source: userSource">
            </select>



        </div>
    </div>
    <script>
        var userDB;
        $(document).ready(function () {


            $data.Entity.extend("Users",
            {
                UserID: { type: "int", key: true, required: true },
                Name: { type: "string", required: true }

            });


            $data.EntityContext.extend("EXAMPLEDB", {
                Users: { type: $data.EntitySet, elementType: Users }
            });

            userDB = new EXAMPLEDB({
                name: "webSql", databaseName: "EXMPLEDB",
                dbCreation: $data.storageProviders.DbCreationType.DropTableIfChange
            });


            var viewModel = kendo.observable({

                //Initial data  binders   ,
                userSource: userDB.Users.asKendoDataSource() //<<<<<< this throws error



            });

            // apply the bindings
            kendo.bind(document.body.children, viewModel);

        });

    </script>

エラーは

Uncaught TypeError: Object function (a,b){var c=this,d,e;c.trigger(w,{field:a}),a==="this"?d=c:(e=O[a]=O[a]||n.getter(a,!0),d=e(c),b&&typeof d=="function"&&(d=d.call(c)));return d} has no method 'push' 
4

2 に答える 2

2

さて、私は同じ質問をJayDataフォーラムに投稿し、理解しました。私はJaydataからパッケージをダウンロードしましたが、スクリプトファイルは古いものでしたが、コミュニティはSVNで直接スクリプトにリンクするように提案しました。

記録のために、上記のコードは正常に機能します。

これがコミュニティの返信です

http://jaydata.org/forum/viewtopic.php?f=3&t=174&sid=2ff7d9f37bf758a573c70a89fac507fb

于 2013-03-19T18:44:57.170 に答える
0

今は試すことができません。データベースの準備が整うまで待つ必要があることを除けば、問題ないようです。次のようになります。

userDB.onReady(function() {
var viewModel = ...
于 2013-03-18T19:07:28.330 に答える