Доступ к componentParent от this.gridApi.ForEachNode - PullRequest
0 голосов
/ 12 мая 2019

Мне нужно выбрать строку сетки ag по умолчанию на основе выбранной даты, которая присутствует в родительском контейнере.Я не могу сослаться на componentParent или 'this' изнутри функции узла

this.gridApi.forEachNode(function (node) {
     If(node.data.dueDate 
          ===this.parentContainer.selectedDueDate) {
                node.setSelected(true)
    }
});

Я получаю 'this' is undefined ошибку.Я не могу получить доступ к gridOptions для использования

gridOptions.context.componentParent.selectedDueDate

Любой намек на эту работу будет очень признателен.

Спасибо, Сидд

1 Ответ

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

у вас есть опечатка If(node.data.dueDate === this.parentContainer.selectedDueDate) "If" здесь буква I ее заглавные буквы должны быть if(node.data.dueDate === this.parentContainer.selectedDueDate)

А также используйте метод стрелки вместо функции, потому что this получает область действия function, но this имеет доступ снаружи для метода стрелки

Используя метод жирной стрелки, вы можете сделать что-то вроде: ~

this.gridApi.forEachNode(node => {
    if(node.data.dueDate === this.parentContainer.selectedDueDate) {
       node.setSelected(true);
    }
});

или вам нужно bind(this) с нормальной функцией, такой как

this.gridApi.forEachNode(function(node) {
    if(node.data.dueDate === this.parentContainer.selectedDueDate) {
       node.setSelected(true);
    }
}.bind(this));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...