如何写入Ext.js中的memoryproxy

时间:2011-01-28 15:53:27

标签: extjs

我正在尝试使用带有javascript视图模型的Extjs。我使用JsonReader和ext.data.memoryproxy类加载商店已经成功。

但是我想要更改我的Javascript viewmodel。我尝试将jsonwriter添加到商店的writer属性,但这不起作用。我收到这个错误:

  

未捕获的异常:Ext.data.DataProxy:DataProxy尝试执行API操作但发现了未定义的url / function。请查看您的代理网址/ api配置。

我的代码是:

var service = viewmodel.selectedService.analytes;

     var serviceResultsStore = new Ext.data.Store({
        reader: new Ext.data.JsonReader({
            fields: ['Analyte', 'Units', 'Value', 'Rounded', 'PossibleValues']

        }),
        proxy: new Ext.data.MemoryProxy(service),
           writer: new Ext.data.JsonWriter({
                    encode: false,
                    writeAllFields:true
                })

对此的任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:1)

JsonWriterMemoryProxy无法很好地协同工作。他们不打算这样做 来自JsonWriter文档,

  

用于编写的DataWriter扩展   数组或单个Ext.data.Record   对象准备执行   远程CRUD操作。

JsonWriter延伸DataWriter。来自DataWriter docs -

  

Ext.data.DataWriter方便   创建,更新和销毁操作   在Ext.data.Store 和a之间   服务器端框架。作家   启用商店会自动   管理Ajax请求以执行   商店上的CRUD操作。

我不确定你的高级设计/意图是什么,但在这种情况下,也许你可以从商店获取记录,修改它们并将它们提交回商店? (您可以直接在商店中执行所有CRUD操作)