瀏覽代碼

解决 combo.store 在渲染前后的冲突问题

luoyifan 3 年之前
父節點
當前提交
633fc86f08
共有 1 個文件被更改,包括 5 次插入8 次删除
  1. 5 8
      src/lib/systemLib.ts

+ 5 - 8
src/lib/systemLib.ts

@@ -339,7 +339,7 @@ export function tryEnable(data, enableSetting) {
 export function setComboStore(sender, config, getDictFn, bizKey) {
     if (sender.xtype === 'combotree') {
         getDictFn(bizKey, (r) => {
-            if (sender.rendered) {
+            if (sender.store) {
                 // 异步回传
                 sender.setStore(new Ext.data.TreeStore({root: r}))
 
@@ -352,7 +352,7 @@ export function setComboStore(sender, config, getDictFn, bizKey) {
 
     } else if (sender.$className === 'Ext.form.field.ComboBox') {
         getDictFn(bizKey, (r) => {
-            if (sender.rendered) {
+            if (sender.store) {
                 // 异步回传
                 sender.setStore(new Ext.data.Store(r))
                 // 这里有个bug, 异步回传完毕之后, 需要强制刷新一下
@@ -373,7 +373,7 @@ export function setComboStore(sender, config, getDictFn, bizKey) {
         const grid = getParentGrid(config)
         const {editor, renderer} = config
         getDictFn(bizKey, (r) => {
-            if (sender.rendered) {
+            if (sender.store) {
                 // 已经渲染出来了, 用方法进行修改
                 const editor = sender.getEditor()
                 if (editor && editor.xtype === 'combo') {
@@ -847,11 +847,8 @@ class SystemEventFu {
         return function (sender, config) {
             // @ts-ignore
             require([url], (grid) => {
-                if (sender.rendered) {
-                    sender.grid = grid.default
-                } else {
-                    config.grid = grid.default
-                }
+                sender.grid = grid.default
+                config.grid = grid.default
             })
         }
     }