Используя ExtWebComponents, как я могу создать простое представление? - PullRequest
0 голосов
/ 19 октября 2019

Я хотел бы объединить несколько компонентов и элементов, как я могу это сделать, используя Sencha ExtWebComponents?

Например:

<div>View</div>
<ext-button></ext-button>

1 Ответ

0 голосов
/ 19 октября 2019

Вот простой пример того, как вы можете составлять веб-компоненты.

Использование компонента:

  1. В index.js я импортировал компонент кнопки и импортировал компонент с import './SandboxViewComponent';

  2. В index.html я объявляю мой с <my-sandbox-view></my-sandboxy-view>.

Источник ниже

SandboxViewComponent.js

import template from './SandboxViewComponent.html';

class SandboxViewComponent extends HTMLElement {

  constructor() {
    super()

    this.innerHTML = template;
  }

  connectedCallback() {
    var me = this;

    // Add after the buttonEl.ext.el is instantiated
    setTimeout(() => {
      setTimeout(() => {
        me._addListeners();
      }, 0);
    }, 0);
  }

  disconnectedCallback() {
  }

  attributeChangedCallback(attrName, oldVal, newVal) {
  }

  _addListeners() {
    var buttonEl = this.querySelector("ext-button");

    button.ext.on("tap", function () {
        alert("tap 1 works");
    });

    button.ext.addListener("tap", function() {
        alert("tap 2 works");
    });

    buttonEl.ext.el.on('click', () => {
      alert('ext on click works');
    });
  }

}
window.customElements.define('my-sandbox-view', SandboxViewComponent);

SandboxViewComponent.html

<div>Sandbox View</div>

<ext-button
        text="Button 1"
        shadow="true"
        arrowAlign="bottom"
        ></ext-button>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...