如何使 EXT JS 模型和代理商店工作? (请帮忙!)

Posted

技术标签:

【中文标题】如何使 EXT JS 模型和代理商店工作? (请帮忙!)【英文标题】:How to make EXT JS model and proxy store work? (please_help!) 【发布时间】:2018-10-25 08:46:13 【问题描述】:

我还没有理解如何使用 REST api 链接服务器数据和表单的字段。

我有一些选择字段的表单。我对服务器上的这个特别字段有值。我认为表单可以从存储模型中获取数据(是/否?)。如果这是真的,我有一个问题:如何将现有表单添加到模型中? 所以主要目标 - 将值从服务器获取到现有表单的现有选择字段通过 REST API。

这是我现在拥有的: -代理商店:

Ext.define('Foresto.store.RESTstore', 
extend: 'Ext.data.Store',
storeID:'reststore',
proxy: 
    type:'rest',
    url:'http://localhost:6666/api/form',
    reader:
        type: 'json',
        root: ''
    
,
autoLoad: true);

-表单中的一个:

Ext.define('Foresto.view.forms.Cutarea', 
extend: 'Ext.form.Panel',
title: 'ForestoL',
header: 
    cls: 'header-cls',

,
scrollable: true,
xtype: 'forestoL',

url: 'save-form.php',

items: [
    xtype: 'selectfield',
    label: 'Field1',
    name: 'name'
,
    xtype: 'selectfield',
    label: 'Field2',
    name: 'allotment'
] ...

请帮忙! 谢谢, 阿图尔。

【问题讨论】:

【参考方案1】:

参见this fiddle 的基本远程组合框。


    xtype: 'combo',
    fieldLabel: 'My Combo',
    valueField: 'id',
    displayField: 'title',
    anchor: '100%',
    store: new Ext.data.Store(
        autoLoad: true,
        fields: ['id', 'title'],
        proxy: 
            type: 'ajax',
            url: 'records.json'
        
    )

【讨论】:

所以不需要创建模型?我可以只为每个字段集成商店吗? 这取决于用例,如果您的商店共享相同的模型,那么集中化会更好。

以上是关于如何使 EXT JS 模型和代理商店工作? (请帮忙!)的主要内容,如果未能解决你的问题,请参考以下文章

带有 Ext JS 的 MVC 架构中 store.load() 的动态代理 URL

使代理使用扩展的 Ext.data.Operation

Extjs使用商店代理api; CRUD

如何在 ext js 4.1 中重新加载商店?

如何使用别名从 ExtJS 中的商店引用模型?

Ext JS 6学习文档-第4章-数据包