hyperHTML을 사용하여 일부 문제가 생겼습니다 (어쩌면 일부 이해 문제 만있을 수 있습니다).hyperHTML : 루프의 일반 내용이 항상 전체로 렌더링되어 바인딩이 끊깁니다 (클릭 이벤트)
루프에 동적 콘텐츠가있는 경우 콘텐츠가 완전히 렌더링되어 바인딩이 손실됩니다 (document.body.innerHTML = content
과 같이 hyperHTML이 아닌 것 같습니까?). 렌더링되는 내용을 클릭
function render() {
console.log('render');
hyperHTML.bind(document.body) `start:<br>
${[1,2,3].map(item => `
count <button id="testbutton${item}">button${item}</button><br>
`)}<br>
press button2<br>
<button id="testbutton">Test Button</button><br>
last rendering ${new Date().toTimeString()}`;
}
function init() {
render();
let self = this;
document.querySelector('#testbutton2').addEventListener('click',() => self.render());
document.querySelector('#testbutton').addEventListener('click',() => self.render());
}
window.addEventListener('load',() => init());
<script src="https://webreflection.github.io/hyperHTML/min.js"></script>
처음 button2
: 아래에있는 내 예제를 참조하십시오. 초기 바인딩이 아직 작동 중입니다. 내용이 다시 렌더링 된 후에는 청취자가 손실됩니다.
반면에 Test Button
은 다시 렌더링되지 않습니다. 바인딩이 여전히 존재합니다.
누군가 나를 설명해 줄 수 있습니다. hypeHTML을 적절한 방법으로 사용하는 방법은 목록을 반복하여 설명 할 수 있습니다. 노드 내부의 콘텐츠를 렌더링 바인드, 및 와이어, 대신 콘텐츠를 만들 :
덕분에, hyperHTML에서 마티아스
안녕하세요, Andrea, 여러분의 의견과 훌륭한 사례를 보내 주셔서 감사합니다. 이제는 분명합니다 :-) –
https://codepen.io/janat08/pen/wpWgbO 각 업데이트를하기 전에 배열을 변경해 보았습니다. 아무런 문제가 없습니다. –