0

Backbone.js を使用して 1 ページのアプリケーションを構築しています。名前空間を導入し、次のようなモジュール定義を作成しました。

// Declare namespace
var app = app || {};

// Recommendation Model Definition
// -------------------------------
app.Recommendation = Backbone.Model.extend({});

var rec =  new app.Recommendation({id: "1", rating: "2"});
console.log(rec.toJSON());

// Chrome JS console output 
Array[1]
 0: Object
 id: "1"
 rating: "2"
 __proto__: Object
length: 1
__proto__: Array[0]

問題は、toJSON() メソッドが直接の JSON 文字列を返さず、配列にネストされていることです。名前空間を除外している場合、それは正しいことをしています。私は明らかに rec.toJSON()[0] と述べることができますが、それは良いコーディングではないようです ;)?

私は何か間違ったことをしていますか?

4

2 に答える 2

0

あなたは何か間違ったことをしています...おそらくモデルの代わりにBackbone.Collectionを使用しています...これを参照してください:

http://jsfiddle.net/VVLhZ/2/

$("#output").html(JSON.stringify(rec.toJSON()));

あなたが説明したことが起こらないことを示しています。

于 2013-06-04T17:32:53.780 に答える