[英]backbone fetch not updating the model
我正在使用帶有骨干的requirejs。 該腳本運行無誤,但model .fetch()不會更新模型。 Backbone.js的兩個文件是:
在main.js中,我有
'use strict';
require(['pageElements'],function(pageElements){
$( document ).ready(function() {
var country = new pageElements.country();
country.fetch({
success: function(e){
console.log(country.get('areaLevelZeroID')); // returns undefined
}
});
});
});
在pageElements.js中,我有
define(function() {
var country = Backbone.Model.extend({
url : 'resources/js/backBoneSandBox/countries.php',
parse: function(data){
newData = JSON.parse(data);
console.log(newData.areaLevelZeroID); // returns 1
return data;
}
});
return ( country );
});
解析函數返回正確值但不更新模型的地方。
resources / js / backBoneSandBox / countries.php已測試並返回jSON字符串
{"areaLevelZeroID":"1","areaLevelZeroName":"Afghanistan"}
我一定錯過了一些非常簡單的東西,但是我看不到。 預先感謝您提供的任何建議。
通常,流程是fetch - parse - set - success handler
。 在您的情況下,您會從服務器收到字符串響應,因此必須在調用模型上的set
之前將其解析為JSON。 這就是為什么,您必須return newData;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.