우리는 KnockoutJS를 사용하여 복잡한 엔터프라이즈 응용 프로그램을 작성하고 특히 IE8에서 성능이 떨어졌습니다. 응용 프로그램에 1GB 이상의 RAM이 필요하며 절대로 메모리를 사용할 수 없습니다. 조사 중에 KnockoutJS가 DOM 노드에 대한 참조를 유지하고 결코 삭제하지 않는다는 것을 발견했습니다. 이것은 공용 KnockoutJS 예제에 대해 IESieve를 사용하여 재현 할 수 있습니다. DOM 노드를 추가 및 삭제하는 예제로 재생하면서 DOM 사용률을 감시하면됩니다.KnockoutJS IE8 성능 문제 및 메모리 누수
누구든지이 문제에 직면하게하고이를 해결하는 방법에 대한 아이디어가 있습니까?
이 문제가 발생하지 않았습니다. 아마도 응용 프로그램에 문제가있을 수 있습니다. – Tyrsius
행운이 있지만 다른 사람들도 @nockoutjs 포럼을 불평하고 있습니다. IE8을 치료하기 위해 특별한 조치를 취합니까? –
저는 Knockoutjs에 익숙하지 않지만 IE 기반 개발에 익숙합니다. Knockoutjs가 DOM을 참조하는 javascript 클로저를 사용하는 경우 이러한 참조가 매달려 있으면 성능이 저하되고 메모리 누수가 발생할 수 있습니다. 이 문제를 해결하려면 자바 스크립트 라이브러리를 수정해야합니다. – Anthill