Я пытаюсь добавить новый вызов свойства в JSON, вызвав внутри него функцию. Но я получаю сообщение о том, что функция не определена. Я позвонил с использованием предложения this
, но все равно получаю ту же ошибку. вот мои данные.Функция вызова внутри объекта JSON
[{ key: 1, fill:this.fillcolor(mytext),text: mytext }]
fillColor
функция возвращает код цвета, когда в зависимости от имени текста, переданного ей.
fillColor = (data) => {
switch (data) {
case 'NMP':
return 'indigo400';
break;
case 'KPD':
return 'pinkA200';
break;
case 'NMV':
return 'orangeA400';
break;
case 'KRV':
return 'lightBlue400';
break;
case 'NIP':
return 'yellowA200';
break;
case 'KRU':
return 'lightGreenA400';
break;
case 'UPS':
return 'deepPurpleA100';
break;
case 'MK':
return 'brown300';
break;
default:
return 'pinkA200';
}
};
Я до сих пор не могу понять, почему я продолжаю получать эту ошибку. Параметр myText
содержит имя/свойство.
Попробуйте var fillcolor = function (data) {// ваш код}. Не добавляйте this.fillcolor просто fillcolor (данные). @ Tromesh –
Что означает «объект JSON», на который ссылается ваш заголовок вопроса? В каком контексте вы определяете «fillColor»? В каком контексте вы это называете? –