灰烬初始化无法识别_super

The*_*e E 1 components ember.js

所以我的应用程序具有这个component.js:

import Component from '@ember/component';
import layout from './template';
export default class MyComponent extends Component {
    layout = layout;

    init() {
        this._super(...arguments);
    }
}
Run Code Online (Sandbox Code Playgroud)

呈现组件时,我在chrome控制台中收到此错误:

Assertion Failed: You must call `this._super(...arguments);` when overriding `init` on a framework object. Please update <savings-toolkit@component:my-component::ember2445> to call `this._super(...arguments);` from `init`.

内容未加载。我希望我能说更多,但说真的,这到底是什么?

是的,当我开始时,最初内容更多。然而,这实际上只是以上内容。

The*_*e E 8

没有人回答,但我找到了答案。

如果您使用的是类,即export default class myComponent extends Component与旧方法(export default Component.extend)相反,则不应使用this._super。而是使用super关键字:

super.init(...arguments);

  • 还请注意原生类中 `constructor` 和 `init` 之间的区别。您可以在这篇很棒的博客文章中找到有关差异的更多信息:https://www.pzuraq.com/coming-soon-in-ember-octane-part-1-native-classes/ (2认同)