2017-04-18 1 views
2

일부 Elementdelete 기능을 사용하면 어떻게 다시 표시 할 수 있습니까?Threepenny GUI에서 요소를 재 작성하는 방법은 무엇입니까?

예제와 설명서를 둘러 보았지만 mkElement을 제외하고는 이것을 수행 할 수있는 기능을 찾을 수 없었습니다. String을 전달해야합니다. 그러나 내가 와 함께 작업 중이므로 String을 작성하는 것은 약간 어려울 것입니다.

그렇게 할 수있는 방법이 있습니까?

답변

2

delete의 서명이 delete :: Element -> UI() 인 경우 delete으로 전화하면 Element이됩니다. 왜이 Element 어딘가에 붙들 수없는 이유는 무엇입니까? (따라서 여러 가지 방법으로 참조를 유지해야 함을 의미합니다.) 그런 다음 나중에 (#+) :: UI Element -> [UI Element] -> UI Element을 사용하여 자식으로 다른 요소에 나중에 첨부하십시오. 이전에 있던 장소가 다시 나타나기를 원한다면, 부모로 시작하는 바로 그 요소에 어린이로 붙일 수 있습니다. 이것은 당신이 염두에 두었던 것입니까, 아니면 제가 그 질문을 오해 한 것입니까?

+0

감사합니다. 나는 그것을 다시 보여주기 위해 어린이 요소로 두는 것을 완전히 잊었다. 그거야. –

3

(라이브러리 저자 여기에) 실제로

delete 기능은 바로 DOM 트리에서 요소를 제거보다 더 많은 작업을 수행 - 그것은 JS와 하스켈 측면에서 모든 참조를 제거하려고합니다. 기본적으로 요소는 delete 이후에는 사용할 수 없습니다 (사용 가능해야 함). CSS를 display 속성을 통해

은 일시적 요소를 숨기려면, 당신은 할 수

  • 숨기기를.
  • 부모 요소의 자식을 놓습니다. 에 의해 element parent # set children [].
+0

아 맞아, 나는 그런 식으로 일한다는 것을 몰랐다. 나는 그 때 그것을 고칠 것이다. 그것들을 문서에 넣는 것이 좋을 것입니다. 왜냐하면 그것들이'delete' 후에 사용 가능해서는 안된다는 것을 명확히하지 않기 때문입니다. –

관련 문제