0

私のbbルーターでは、JSONデータを取得します

$.ajax({
            url: "js/projects.json",
            success: function(projects) {

                database.projects = projects;

                var variables = {};
                var niz = new Array();
                var param = "Client"

                        $.each(projects, function()
                        {
                            if (!variables[this[param]])
                                variables[this[param]] = [];    
                            variables[this[param]].push(this);
                        });

                        for(var d in variables) {

                                niz.push(d);  

                                var number_of_clients = niz.length;
                        }

                        console.log(number_of_clients); 

                Backbone.history.start();
            }
        });

ここで、ビューの 1 つからこの「プロジェクト」にアクセスし、そのデータを使用していくつかのものにアクセスしたいのですが、ここのように同じことをもう一度実行できることはわかっていますが、コードが重複しています。ビューでこのデータを取得する方法はありますか? 私はいくつかのことを試しましたが、成功しませんでした。常に undefined を取得します

4

2 に答える 2

0

正直なところ、あなたの質問は設計上非常に疑わしいようです。:)

Ajax 呼び出しは、ルーターではなく、jquery を直接使用せずに、フェッチ関数を使用してモデルで行う必要があります。

そのため、特に理由がない限り、アプリを再設計することをお勧めします。

于 2013-08-08T14:13:06.287 に答える
0

データをウィンドウ (window.projects = projects) に添付すると、どこからでもアクセスできます。しかし、Backbone の ajax ツールを使用することをお勧めします。これは、はるかに簡単で面倒なことではありません。

于 2013-08-08T14:12:11.607 に答える