저는 Router5를 사용하여 매우 기본적인 클라이언트 (즉, 본질적으로 웹 사이트)를 만들고 있습니다. 사용자가 단추를 클릭 할 때 원하지 않는 요소가 숨겨 지도록 코드가 설정되어 있습니다 (클래스 hidden
이 추가됨). 나타나는 요소에 hidden
클래스가 제거되었습니다. 훌륭하게 작동합니다. 그러나 내가 index
이 아닌 상태에 있고 새로 고침하면 index
상태의 요소가 다시 나타납니다.Router5에서 뷰 상태를 새로 고칠 때 다른 뷰의 일부가 다시 나타납니다.
디버깅 목적으로 콘솔을 조사했습니다. 새로 고침 할 때 색인보기의 hidden
클래스가 실제로 제거되고 그 이유가 확실하지 않습니다.
저는 코딩에 비교적 익숙하므로 도움을받을 수있는 도움이 있으면 대단히 감사하겠습니다.
이것은 나의 이행 코드입니다. 내가 말했듯, 내가 다른 하나 개의보기에서거야 때 작동하지만이 index
요소 중 하나가 다시, index
하지 않은보기를 새로 고칠 때 :
const transition = function() {
return (toState, fromState, done) => {
if (fromState) {
$(`#${fromState.name}`).addClass('hidden');
}
$(`#${toState.name}`).removeClass('hidden');
done();
};
};
기타 관련 코드 :
const routes = router.rootNode.children.map((route) => {
return route.name;
});
const registerPaths =() => {
routes.forEach((route) => {
$(`a[href="#${route}"]`).on('click', (event) => {
event.preventDefault();
router.navigate(route);
});
});
};
$(document).ready(function() {
require('./router/index').start();
require('./router/events').registerPaths();
});
나는 그것이 전부라고 생각한다. 도움을 받으려면 다른 코드가 필요한지 알려주십시오.
감사합니다.