簡體   English   中英

ExtJS4 Model.save()錯誤:記錄未定義。

[英]ExtJS4 Model.save() error: record is undefined.

我正在嘗試做的是:

我正在使用MVC架構使用ExtJS 4開發應用程序。 我有一個具有代理的模型(用戶),一個商店(用戶)和一個控制器。

控制器偵聽“添加用戶”的按鈕,該按鈕從表單接收數據。 我創建一個新用戶並傳遞數據:

var newUser = new MY.model.User({name: textInputValue}); //bob

然后打電話

newUser.save({
    success: function() { ... },
    failure: function() { ... }
});

怎么了:

無論是否使用回調,即使save()函數參數為空,也會出現以下錯誤:

record is undefined:
me.set(record.data);

在第972行的... / ext-4.0.1 / src / data / Model.js中拋出。

到目前為止,我已經發現了什么:

運行堆棧跟蹤顯示:

operation = Ext.create('Ext.data.Operation', options);

在第968行(與上述同一Model.js文件相同)返回一個具有記錄的對象,其中包含我正在傳遞的數據。

這里有兩個問題:

  1. 這是錯誤嗎?
  2. 難道我做錯了什么?

任何幫助將不勝感激。

首先,我建議您升級到最新版本4.0.2a ,以便獲得最新的錯誤修復。

Ext JS具有自己的類系統,因此您無法使用new關鍵字實例化基於Ext的類。 始終使用Ext.create從Ext JS實例化一個新類,並且僅將new用於基於普通原型的類。

對於模型,您可以通過模型管理器創建新實例:

var user = Ext.ModelManager.create({
    name : 'Bob'
}, 'User');

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM