いいえ、クラス名は、is
ゲッターから返される要素名とは関係ありません。例えば、クラスがXFoo
と要素名my-app
名前を付けることができます
class XFoo extends Polymer.Element {
static get is() { return 'my-app'; }
}
customElements.define(XFoo.is, XFoo);
クラスはまた、匿名のようになります。
customElements.define('my-app', class extends Polymer.Element {
static get is() { return 'my-app'; }
});
customElement.define()
は、それが説明していない理由であるかもしれないWeb Components Custom Elements spec、で定義されていますPolymer 2.0-preview Wikiにあります。この仕様では、クラス名に関する規定はありません。仕様の例とMDNでは、クラス名は通常、少なくとも保守性のために要素名に似ています。
MDNインスタンス:save-button
SaveBtn
VS:
var MySaveBtn = document.registerElement("save-button", SaveBtn);
カスタム要素スペックインスタンス:auto-embiggened
対AutoEmbiggenedImage
:
customElements.define("auto-embiggened", AutoEmbiggenedImage, { extends: "img" });
これがどのように機能するかを説明する良い文書を指すことができますか?それを説明しないために私が参照したPolymerドキュメント。 – Mowzer
カスタムエレメント仕様へのリンクが追加されました。更新された回答をご覧ください。 – tony19