Я изучал javascript и пытался использовать MVC. Я заметил проблему, и я не мог найти ответ на вопрос, почему, в любом месте. Проблема заключается в следующем:
У меня есть класс Модель следующим образом в model.js
:
export default class Model {
constructor() {}
speak(word) {
return word;
}
}
и контроллер (controller.js
):
import Model from './model.js';
export default class Controller {
constructor() {
this.model = new Model();
}
speak(word) {
this.model.speak(word);
}
}
I Я только явно пишу экспорт и импорт здесь, так как у меня есть это в моем приложении, и я хочу, чтобы этот пример кода максимально отражал мою проблему c. У меня есть отдельные файлы для каждого класса или компонента. Во всяком случае, позже, в моем главном AppController, у меня есть
import Controller from './controller.js';
const controller = new Controller();
console.log(controller.speak('Hi'));
Последняя строка всегда возвращает undefined
, независимо от того, что я возвращаю, будь то, как в этом случае, простая строка или любой атрибут модельного класса. Я знаю, когда я делаю это:
controller.model.speak('Hi');
Тогда все в порядке. Поэтому мой вопрос не в том, как ее решить, а в том, почему это происходит? Большое спасибо за ваши ответы.