Можете ли вы указать другой customCellRenderer для разных строк в ag-grid Angular - PullRequest
0 голосов
/ 10 мая 2019

Я построил эту простую сетку:
enter image description here

Пользователь выбирает опцию из списка 1 в ParenColumn.
В зависимости от того, какой вариант он выбрал, в столбце 2 будут отображаться разные списки. Например, если он выберет вариант 3, список 3 будет отображен во втором столбце соответствующей строки.
Проблема заключается в том, что поскольку customCellRenderer во втором столбце применяется ко всем строкам, тогда во всех строках будет показан тот же список, что и на рисунке.
У меня вопрос: можно ли "дать" каждой строке свой собственный cellRenderer?
Вот определение ChildColumn:

 {
          headerName: "ChildColumn",
          field: "chdCol",
          cellRenderer:  (params) => {
            return(
                   `       <select class="form-control">
                <br>`
                +`<option>` +
                this.receivedChosenOptionfromCol1[0]
                +`</option>`
                +`<option>` +
                this.receivedChosenOptionfromCol1[1]
                +`</option>` +
                `<option>` +
                this.receivedChosenOptionfromCol1[2]
                +`</option>` +
                `<option>` +
                this.receivedChosenOptionfromCol1[3]
                +`</option>` +
              `</select>
            `)
          } 

Чтобы увидеть весь код, который я использовал для реализации этой сетки и ее функциональности, пожалуйста, ознакомьтесь с кодом StackOverflow, где я ответил на свой вопрос:
Как обновить столбец B в ag-grid на основе изменения, произошедшего в другом столбце A

Спасибо:)

1 Ответ

0 голосов
/ 12 мая 2019

Вы можете сделать следующее

      cellRenderer:  this.getCellRenderer

Затем определить функцию getCellRenderer

function getCellRenderer(params) {
    // Check condition to render renderer 1 or 2
    // Replace condition
    if (true) {
        return "<h1> Component 1 </h1>"
    } else {
        return "<h1> Component 2 </h1>"
    }
}

Придание функции визуализации ячейки делает ее динамической, так как она будет вызываться каждый раз, когда значения сеткиизменены.

...