[英]Can I use insertAdjacentHTML to add a long string of html tags and text?
[英]How can I render html with insertAdjacentHTML
如何使用纯 javascript 渲染组件? 我使用 insertAdjacentHTML 和 forEach 来呈现包含对象的列表,但对象似乎未定义。
const liRender = document.getElementById('ul-component')
function render() {
itens.forEach(() => {
liRender.insertAdjacentHTML("afterbegin",
` <li class="products-list__item">
<div class="products-list__item-thumbnail">
<img
class="product__thumbnail"
src=${itens.img}>
<div class="products-list__item-main-content">
<h4 class="product__name">
${itens.modelo}
</h4>
<p class="product__description">
${itens.description}
</p>
<div class="products-list__item-action-buttons">
<button class="button" data-open-modal="1">Detalhes</button>
</div>
</div>
</li>
`
)
})
}
export function Component() {
render()
}
您的forEach
需要在iten
传递。 像下面这样,
itens.forEach((iten) => {
然后你像这样引用每个属性,
<p class="product__description">
${iten.description}
</p>
const liRender = document.getElementById('ul-component') const itens = [{ modelo: 'test', description: 'description', img: 'image' }, { modelo: 'test 2', description: 'description 2', img: 'image' }, { modelo: 'test 3', description: 'description 3', img: 'image' }]; function render() { itens.forEach((iten) => { liRender.insertAdjacentHTML("afterbegin", ` <li class="products-list__item"> <div class="products-list__item-thumbnail"> <img class="product__thumbnail" src=${iten.img}> <div class="products-list__item-main-content"> <h4 class="product__name"> ${iten.modelo} </h4> <p class="product__description"> ${iten.description} </p> <div class="products-list__item-action-buttons"> <button class="button" data-open-modal="1">Detalhes</button> </div> </div> </li> ` ) }) } render();
<ul id='ul-component'> </ul>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.