Я использую реакцию в моем проекте. Когда button.onClick
, я хочу вызвать метод-прототип (this.changeFont
), который изменяет стиль шрифта &('body')
. Имя fontstyle находится в свойстве прототипа с именем 'valuename'
, но когда я нажимаю кнопку, появляется сообщение об ошибке:
"невозможно прочитать значение со значением undefined".
Это потому, что когда я нажимаю кнопку, «this» становится «событием», а не объектом?
Я пытался var _this = this;
и менял to _this.valuename
, но ошибка говоритон не может прочитать неопределенный _this.
function FontClass(name, valuename) {
this.name = name;
this.valuename = valuename;
}
FontClass.prototype.changeFont =function(){
$('body').css("font-family", this.valuename);
}
var fira = new FontClass("Fria", "Fira Code");
const Nav = ({style}) => {
return(
<animated.div className="nav-wrapper" style={style}>
<div>
new array=[<button onClick={fira.changeFont}>{fira.name}</button>]
</div>
<div>
</div>
</animated.div>
);
}