Как мы можем вернуть созданный клиентом элемент в JS для рендеринга веб-компонента в stenciljs

У меня есть компонент, который имеет настраиваемый метод для создания элемента, я создаю настраиваемый элемент с помощью js и возвращаю массив, как мы можем использовать этот массив или элементы / элемент для возврата в качестве элемента рендеринга

Примечание: createCustomElement будет иметь динамическую реализацию

      import { Component, Element, Prop, State } from '@stencil/core'


@Component({
  tag: 'common-listing',
  shadow: true,
})
export class CommonListing {
  @Element() el: HTMLElement

  @Prop() columns: any

  @State() list: Array<any> = []

  @State() click: string = 'CLic'

  async componentWillLoad() {
    const res = await fetch('http://localhost:3000/users')
    const data = await res.json()
    this.list = data
  }
  createCustomElement(l: any) {
    let div = document.createElement('div')
    let span = document.createElement('span')
    span.innerText = l['user_id']
    div.appendChild(span)
  }
  render() {
    let content = this.list.map(l => this.createCustomElement(l))
    return content
  }
}

1 ответ

Метод рендеринга должен возвращать элементы JSX:

      render() {
  return this.list.map(l => <div><span>{l['user_id']}</span></div>);
}
Другие вопросы по тегам