我有2个非常简单的类,一个是父类Calendar
,另一个是子类MonthCalendar
:
calendar.js:
import MonthCalendar from './month-calendar';
export default class Calendar {
constructor() {
this.date = new Date();
}
displayMonthCalendar(){
var mcal = new MonthCalendar();
mcal.generate();
}
}
var cal = new Calendar();
cal.displayMonthCalendar();
月calendar.js:
import Calendar from './calendar';
export default class MonthCalendar extends Calendar {
constructor() {
super()
}
generate() {
alert('working');
}
}
当我尝试运行时,我不断收到错误:
Uncaught TypeError: Super expression must either be null or a function, not undefined
它告诉我Calendar
未定义;但是,如果我不扩展Calendar
并在generate()
方法中使用它,则不是未定义的:
月calendar.js:
import Calendar from './calendar';
export default class MonthCalendar {
generate() {
console.log(new Calendar());
}
}
不会引发任何错误。