Я работаю над проектом с React и Electron, и у меня есть ошибка.У меня есть компонент с конструктором, который принимает реквизит (которые приходят в виде двух переменных.) Конструктор создается в отдельном файле.Проблема в том, что переменная работает нормально (например, если вы делаете console.log
для ее вывода) в конструкторе, но за ее пределами переменные возвращаются неопределенными.
Я уже пытался использовать .bind
связать это, но это не помогло, и все равно оказалось неопределенным.
Здесь вызывается конструктор:
const dropDown = new Dropdown({
editor,
monaco
});
Вот конструктор и пример того, где я пытаюсь использовать переменные:
constructor(props) {
super(props);
// Define variables
this.editor = props.editor;
this.monaco = props.monaco;
// Returns correct object
console.log(this.monaco);
// Bind functions
this.changeLanguage = this.changeLanguage.bind(this);
this.filterFunction = this.filterFunction.bind(this);
this.dropDown = this.dropDown.bind(this);
}
changeLanguage(language) {
// Returns undefined all the time
console.log(this.monaco);
this.monaco.editor.setModelLanguage(this.editor, language);
}
Iожидается, что переменная будет одинаковой как в конструкторе, так и в функциях в другом месте файла, но по какой-то причине она определена только в конструкторе.