javascript - ExtJs4 MVC,组合框的数据存储

标签 javascript model-view-controller extjs4

我想定义存储companyList的data.store,因为我想稍后重用这个存储。

tbar: Ext.create('Ext.Toolbar', {
    items: [
        {
        xtype : 'combo',
        name : 'companyCode',
        editable : false,
        valueField : 'companyCode',
        displayField : 'companyName',
        triggerAction : 'all',
        store: Ext.create('Ext.data.Store', {
                fields: ['companyCode', 'companyName'],
                proxy: {
                type: 'ajax', 
                url: '/Reports/GetCompanyList/',
                reader: 'json',
                actionMethods: {
                    read: 'POST'
                }
                },
                autoLoad:true  
            })

上面的代码是有效的,我想将商店放入应用程序文件夹下的商店文件夹中。

商店/CompanyList_store.js

Ext.define('App.store.CompanyList_store', {
    extend: "Ext.data.Store",
    fields: ['companyCode', 'companyName'],
    proxy: {
        type: 'ajax',
        url: '/Reports/GetCompanyList/',
        reader: 'json',
        actionMethods: {
            read: 'POST'
        }
    },
    autoLoad: true  
});

我在 Controller 中添加了这个商店。

Ext.define("App.controller.InventoryReport", {
    extend: "Ext.app.Controller",
    stores: ['Inventory_store', 'CompanyList_store'],
    .
    .

并将该商店添加到组合框商店,

tbar: Ext.create('Ext.Toolbar', {
    items: [
        {
        xtype : 'combo',
        name : 'companyCode',
        editable : false,
        valueField : 'companyCode',
        displayField : 'companyName',
        triggerAction : 'all',
        store: 'CompanyList_store' //it does not work.

我做错了什么?如果有人知道请告诉我。

最佳答案

必须将商店的 storeId 属性设置为您从组合中调用的值

http://docs.sencha.com/ext-js/4-1/#!/api/Ext.data.AbstractStore-cfg-storeId

但在现实生活中,我建议使用 Deft 的依赖注入(inject)。

关于javascript - ExtJs4 MVC,组合框的数据存储,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10989897/

相关文章:

javascript - 在 Controller 上找不到公共(public)操作方法

javascript - 懒惰地将第三方库添加到 ext js 应用程序(仅在需要时)

javascript - MIDL 不希望我定义无 HRESULT 的函数!

javascript - 执行ajax同步POST然后提交表单的正确方法

javascript - Google Maps API 的地理位置和自定义标记

javascript - ExtJS 网格选择模型

javascript - 为什么这个 extjs 代码在 extjs 4.0.7 中返回 null?

javascript - 通过绑定(bind)新数据来操作元素

php - 调用未定义的方法 Closure::query()

java - 'model' 和 'view' 之间的接口(interface)