【发布时间】:2019-04-03 10:00:25
【问题描述】:
我实现了一个模态作为自定义 HTML 标记。
class ModalDialog extends HTMLElement {
constructor() {
super();
this.shadow = this.attachShadow({
mode: 'open'
});
this.modal = document.createElement('div');
this.modal.className = 'modal';
this.modalWrapper = document.createElement('div');
this.modalWrapper.className = 'modal-wrapper';
this.modalHeader = document.createElement('div');
this.modalHeader.className = 'modal-header';
this.modalHeader.innerHTML = 'Oops, nothing found!';
...
}
另外,我实现了另一个继承自 HTMLElement 的类。我们称它为 A。Said 类正在尝试创建一个 ModalDialog,应该将其添加到 DOM 中以便显示。
现在,我的问题是:如何从 A 类设置 modalHeader 的文本? 我试图设置一个属性并在 ModalDialog 类中读取它,但当时该属性是未定义的。
class A extends HTMLElement {
...
this.modal.setAttribute('headerText', 'Blablabla');
...
}
有什么好办法解决这个问题吗?
【问题讨论】:
标签: javascript html ecmascript-6 custom-element