Setelah dokumentasi , saya lakukan:
var collection = new Backbone.Collection.extend({
model: ItemModel,
url: '/Items'
})
collection.fetch({ data: { page: 1} });
url berubah menjadi: http://localhost:1273/Items?[object%20Object]
Saya mengharapkan sesuatu seperti http://localhost:1273/Items?page=1
Jadi, bagaimana cara saya lulus params dalam metode pengambilan?
javascript
backbone.js
Shawn Mclean
sumber
sumber
JSON.stringify({ data: { page: 1} })
?collection.fetch(JSON.stringify({ data: { page: 1} }));
dan tidak ada yang berlalu di url.Jawaban:
mengubah:
untuk:
Jadi tanpa melakukan itu, ini disebut dengan
{data: {page:1}}
objek Anda sebagaioptions
Jadi ia mengirim 'data' ke jQuery.ajax yang akan melakukan yang terbaik untuk menambahkan apa pun
params.data
ke URL.sumber
Anda juga dapat mengatur processData menjadi true:
Jquery akan secara otomatis memproses objek data menjadi string param,
tetapi dalam fungsi Backbone.sync, Backbone mematikan prosesData karena Backbone akan menggunakan metode lain untuk memproses data dalam POST, UPDATE ...
dalam sumber Backbone:
sumber
Contoh lain jika Anda menggunakan Titanium Alloy:
sumber
sumber