Typescript 当我更改dxGrid lookup数据源时,查找停止扩展

Typescript 当我更改dxGrid lookup数据源时,查找停止扩展,typescript,mvvm,devexpress,frontend,devextreme,Typescript,Mvvm,Devexpress,Frontend,Devextreme,因此,我的函数似乎可以处理我的数据,但此后查找将停止工作。 当我点击该列时,它停止工作,这是破坏它的代码: (控制台日志之间的行) console.log("Gender Updating:", $("#EntitlementRules").dxDataGrid("instance").columnOption("GenderID", "lookup")); $("#EntitlementRules").dxDataGrid("instance").columnOption("GenderID"

因此,我的函数似乎可以处理我的数据,但此后查找将停止工作。 当我点击该列时,它停止工作,这是破坏它的代码: (控制台日志之间的行)

console.log("Gender Updating:", $("#EntitlementRules").dxDataGrid("instance").columnOption("GenderID", "lookup"));
$("#EntitlementRules").dxDataGrid("instance").columnOption("GenderID", "lookup.dataSource", distinctGenders);
console.log("Gender Updated:", $("#EntitlementRules").dxDataGrid("instance").columnOption("GenderID", "lookup"));
这就是我为查找定义实际列的地方:

console.log("Gender Updating:", $("#EntitlementRules").dxDataGrid("instance").columnOption("GenderID", "lookup"));
$("#EntitlementRules").dxDataGrid("instance").columnOption("GenderID", "lookup.dataSource", distinctGenders);
console.log("Gender Updated:", $("#EntitlementRules").dxDataGrid("instance").columnOption("GenderID", "lookup"));
                   {
                        dataField: "GenderID",
                        caption: "Gender",
                        allowEditing: true,
                        allowFixing: true,
                        lookup: {
                            dataSource(options) {
                                return {
                                    store: new DevExpress.data.ArrayStore({
                                        data: self.Cache.AllProducts,
                                        key: "ID"
                                    }),
                                }
                            },
                            valueExpr: "GenderTypeCode",
                            displayExpr: "Gender"

                        },
                    },
这就是我调用函数的地方:

console.log("Gender Updating:", $("#EntitlementRules").dxDataGrid("instance").columnOption("GenderID", "lookup"));
$("#EntitlementRules").dxDataGrid("instance").columnOption("GenderID", "lookup.dataSource", distinctGenders);
console.log("Gender Updated:", $("#EntitlementRules").dxDataGrid("instance").columnOption("GenderID", "lookup"));
onCellClick: function (e) {self.refreshProductsInRangeGenderandSize(e.data)},

我相信数据源是在数据准备就绪之前填充的,所以我将该函数放置在JQuery延迟内2500毫秒,以确保数据准备就绪

console.log("Gender Updating:", $("#EntitlementRules").dxDataGrid("instance").columnOption("GenderID", "lookup"));
$("#EntitlementRules").dxDataGrid("instance").columnOption("GenderID", "lookup.dataSource", distinctGenders);
console.log("Gender Updated:", $("#EntitlementRules").dxDataGrid("instance").columnOption("GenderID", "lookup"));
setTimeout(
函数(){
$(“#授权规则”).dxDataGrid(“实例”).columnOption(“GenderID”、“lookup.dataSource”、distinctGenders);
$(“#授权规则”).dxDataGrid(“实例”).columnOption(“SizeID”、“lookup.dataSource”、distinctSizes);
$(“#授权规则”).dxDataGrid(“实例”).columnOption(“StyleID”、“lookup.dataSource”、distinctStyles);
$(“#权利规则”).dxDataGrid(“实例”).columnOption(“colorId”、“lookup.dataSource”、distinctColor);
}, 2500);