Рассмотрим этот сценарий:
//called with (selectionModelInstance, Index, Record)
function myCallback(sm,index,record) {
//Parameter mapping:
//sm -> selectionModelInstance
//index -> Index
//record -> Record
alert(record.data);
//record is actually a record object, so record.data works
}
Посмотрите, что происходит, когда вы пропускаете параметр:
//called with (selectionModelInstance, Index, Record)
function myCallback(sm,record) {
//Parameter mapping:
//sm -> selectionModelInstance
//record -> Index
alert(record.data); //Error
//record is actually Index here, and it obviosly doesn't have data property.
}
Ошибка, которую вы видите, не имеет ничего общего с несоответствием параметров при вызове функции,Javascript позволяет любой функции, принимающей любое количество параметров, вызываться с любым количеством параметров.Ошибка связана с попыткой разыменования свойства record.data
, которого там нет.
Чтобы ответить на ваш вопрос, вы должны определить функцию обратного вызова, используя сигнатуру, указанную API, просто ради параметров.отображается правильно.