javascript - 如何刷新树列表布局?

标签 javascript extjs

我有一个像这样定义的treelist:

{
    xtype: "treelist",
    itemId: "MainMenu",
    store: {
        root: {
            expanded: true,
            children: [{
                 text: "One",
                 leaf: true,
                 iconCls: "x-fa fa-frown-o"
            }]
        }
    }
}

当我加载页面时,我看到这个树列表渲染正常。然后我单击一个按钮,该按钮执行以下代码:

mainmenu.getStore().add({
    text: "Two",
    leaf: true,
    iconCls: "x-fa fa-frown-o"
});
console.log(mainmenu.getStore().getCount()); // prints out correct value 2

问题是我在树列表中仍然只看到一项。换句话说,treelist 存储区填充了新数据,但不显示它。那么,我该如何修复它呢?我想应该有某种刷新或更新方法,它将刷新 TreeView 。

最佳答案

您的问题可能是错误地使用了 TreeStore。树存储有一个根,该根的子节点由 TreeList 递归显示。但是,要实际添加到树存储,您应该使用 NodeInterface .

就您而言:

mainmenu.getStore().getRootNode().appendChild({
    text: "Two",
    leaf: true,
    iconCls: "x-fa fa-frown-o"
});

关于javascript - 如何刷新树列表布局?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43697741/

相关文章:

javascript - 如果我输入数字 1,00,000,000,如何将类添加到 html 中的逗号 ","?

javascript - Siesta Test Runner 给出 'store' 未定义错误

javascript - 如何删除网格面板的标题? - ExtJs

extjs - 如何在 Extjs TabPanel 的选项卡中添加工具?

php - 修改此 JS Focus 函数以使用动态设置 Select 选项的 PHP 函数

javascript - 我如何处理 api 的 javascript/clojurescript 包装器库?

extjs - sencha 创建 jsb -a ./app.html -p ./app.jsb3

javascript - Ext.grid.View 在 ext 4 中丢失了配置选项(自动填充)

javascript - 如何评估子指令中的 Angular 表达式并将其暴露在父指令中?

javascript - "text"在定义脚本类型方面有何意义?