ag-grid: RichSelect List is Empty in CellEditor

I’m submitting a … (check one with “x”)

[x] bug report => search github for a similar issue or PR before submitting
[ ] feature request
[ ] support request => Please do not submit support request here, instead see https://github.com/ceolter/ag-grid/blob/master/CONTRIBUTING.md#question

Current behavior RichSelect List is empty. Inspecting HTML shows no items are added to list. This is happening in my project, your demo page and your Plunker example (which is probably be one in the same).

screen shot 2017-11-03 at 11 19 24 am

Expected behavior Expect list to populate with supplied values.

Minimal reproduction of the problem with instructions Go to your demo page Attempt to edit any cell in the Name field

What is the motivation / use case for changing the behavior? Currently not usable.

Please tell us about your environment: AG-Grid demo page

  • ag-Grid version: X.X.X Whatever version demo page is using I’m using 14.0.1 in my project

  • Browser: Tested Chrome, Safari

  • Language: [all | TypeScript X.X | ES6/7 | ES5]

About this issue

  • Original URL
  • State: closed
  • Created 7 years ago
  • Comments: 20 (7 by maintainers)

Most upvoted comments

code complete. fix will be in next release.

ComponentResolver.prototype.createAgGridComponent, (componentResolver.js line 176), gets hit twice in the process of creating renderers for a cell that is activating a RichSelect dropdown.

  • The first time through, a RichSelectCellEditor gets created successfully.
  • The second time through, it attempts to create a cellRenderer, but unsuccessfully.

In componentProvider.js, do you expect ComponentProvider.prototype.retrieve to return null when passing in “cellRenderer”? This seems to be the beginning of the end for cellRendererPromise ultimately being null.

In CellRendererService.prototype.useRichSelectCellRenderer, cellRendererPromise resolves to null on the second pass (cellRendererService.js line 62):

Then it hits the else block where it doesn’t make a lot of sense to modify the eTarget.innerText if the block ultimately returns the null cellRendererPromise.

CellRendererService.prototype.useRichSelectCellRenderer = function (target, eTarget, params) {
        var cellRendererPromise = this.componentRecipes.newCellRenderer(target.cellEditorParams, params); // ** this resolves to null
        if (cellRendererPromise != null) {
            this.bindToHtml(cellRendererPromise, eTarget);
        }
        else {
            eTarget.innerText = params.valueFormatted != null ? params.valueFormatted : params.value;
        }
        return cellRendererPromise; // ** this is null
    };

I need someone with better knowledge of the internal workings to take a look at this.

We would like to use the new Tree Data Grid available in v14 but we’re blocked by a broken richSelect in other parts of our app. And of course, we’re on a deadline. 😃

So we just need to know if this is being addressed any time soon so we can make some decisions. Looking forward to a response from your team. Thanks.