【问题标题】:EXTJS 5 Can I have a tree store in stores property of view model?EXTJS 5 我可以在视图模型的 stores 属性中有一个树存储吗?
【发布时间】:2015-05-08 02:10:21
【问题描述】:

我有这个简单的 mvvm 示例:https://fiddle.sencha.com/#fiddle/j8m

当我从控制器 console.log 视图模型时,商店出现在数据属性中,调用 viewModel.getStores() 返回 null。我不明白:/...

这里的代码与小提琴中的代码相同:

Ext.define('MainViewModel', {
    extend: 'Ext.app.ViewModel',
    alias: 'viewmodel.mainviewmodel',

    stores: {
        todoAccountsStore: {
            type: 'tree'
        },
        skipAccountsStore: {
            type: 'tree'
        }
    }
});

Ext.define('MainViewController', {
    extend: 'Ext.app.ViewController',
    alias: 'controller.mainviewcontroller',

    init: function() {
        console.log(this.getViewModel());
    }
});

Ext.define('MainView', {
    extend: 'Ext.panel.Panel',
    xtype: 'view-main',

    controller: 'mainviewcontroller',

    viewModel: {
        type: 'mainviewmodel'
    }
});

var test = Ext.create('MainView', {
    renderTo: Ext.getBody()
});

【问题讨论】:

    标签: javascript extjs mvvm viewmodel


    【解决方案1】:

    要检索您的商店,您可以在控制器中使用以下代码:

    var viewModel = this.getViewModel();
    var todo = viewModel.getStore('todoAccountsStore');
    var skip = viewModel.getStore('skipAccountsStore');
    

    基于这个thread 他们声明getStores 方法是私有的。我认为文档仍未更新以表示这一点。

    【讨论】:

      猜你喜欢
      • 2015-10-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-09
      相关资源
      最近更新 更多