簡體   English   中英

具有自定義元素的Aurelia類繼承

[英]Aurelia class inheritance with custom elements

我是Aurelia的新手,並嘗試將繼承與自定義元素一起使用:

base.js

import {bindable, inject} from 'aurelia-framework';

@inject(Element)
export class BaseCustomElement {
    list = [1]
    constructor() {
        console.log(this.list)
    }
}

control1.js

import {bindable, inject} from 'aurelia-framework';
import {BaseCustomElement} from 'base';

@inject(Element)
export class Control1CustomElement extends BaseCustomElement{
    list = [1,3]
    constructor() {
        super()
    }
}

我哪里錯了?

使用extendsextend在這里:

export class Control1CustomElement extend BaseCustomElement{

沒有更多的細節,就不可能知道問題出在哪里,但我想它與列表的內容有關-但是,無論如何,作為第一個猜測,

  • 從基類中刪除“ @inject(Element)”
  • 在基類和控件類的構造函數中添加“元素”
  • 從control1構造函數調用super(element)
  • 也許把'this.list = [1,3];' 在super(...)調用之后,在control1的構造函數中返回,並僅接受在子類構造函數完成之前,基類中的this.list僅具有一個元素。
  • ...或...將新列表的內容添加為兩個構造函數的參數,並將其傳遞給super(...)調用中的基類。

不知道這是否可以解決“意外行為”,因為我們不知道您的期望是什么...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM