나는 OnsenUI 2 (지금 현재 rc15)의 pushPage()
기능을 사용하려고합니다.페이지에서 페이지로 이동하면 오류가 발생합니다 (중복?)
$(".tile_handler").on("click", ".imalink", function() {
var link = $(this).data().href;
if(link != null){
document.querySelector("#myNavigator").pushPage(link, { animation: "slide-ios" });
}
})
내가 처음으로 페이지를 누르면, 그것은 잘 작동 다음 OnsenUI 외에도, 내가
jQuery를 3를 사용하고 여기에 특정 요소를 클릭하면 페이지를 추진한다에 내 기능입니다. 돌아 오기 위해 iOS 뒤로 버튼을 사용합니다. 그런 다음 다시 클릭하면이 오류가 발생합니다.이 과정을 반복하면서 점점 더 많은 것을 얻습니다.
는 스플리터 페이지를로드하도록되어 또 다른 기능입니다 : 내가 분배기를 통해 두 페이지 사이를 전환 할 때이 던지는 시작[index.js : 450] catched (약속 있음) pushPage가 이미 실행 중입니다. 여기
$(".splitter_item").click(function() {
var address = $(this).data('address');
$('#content')[0].load(address).then(menu.close.bind($('#menu')[0]));
})
(보다 내가 페이지 사이를 전환 할 때마다)
[undefined : 1] 잡히지 않음 (약속 있음) 스플리터 쪽이 잠김.
는 내가 무슨 일이 일어나고 가정은 내가 페이지를로드 그것을두고 내가 다시 액세스 할 때,이 페이지를 다시로드한다는 것입니다.
document.addEventListener('init', function(event) {
var page = event.target;
if (page.id === 'page1') {
page.querySelector('#push-button').onclick = function() {
document.querySelector('#myNavigator').pushPage('page2.html', {data: {title: 'Page 2'}});
};
} else if (page.id === 'page2') {
page.querySelector('ons-toolbar .center').innerHTML = page.data.title;
}
});
가 이전에로드 된 페이지를 삭제해야하며이를 방지 할 것 popPage()
기능이있다 : 그러나 as this 같은 OnsenUI 예와 같이 동작 될 것 같지 않습니다. 그러나 참조는 그것을 사용하지 않으므로, 나는 잘못된 것을하고 있다고 가정합니다. 그러나 나는 무엇을 모른다.
UPDATE는 :
나는 CodePen에서 두 문제를 재현 할 수 있었다. Here은 분배기 오류이고 here은 pushPage()
입니다. pushPage()
처럼 내 기능에 문제가있는 것 같아요. 클릭 할 때마다 pushPage()
요청이 추가됩니다. 이유는 확실하지 않습니다.
두 오류는 리플 에뮬레이터에서만 발생합니다 (VS2015 경유). 안드로이드 에뮬레이터에서 재현 할 수없는 것 같습니다 (그러나 $(".tile_handler").on("click", ".imalink", function() {
코드는 여러 번 불규칙하게 실행됩니다). 나는 이것을 더 시험하고있다.
동일한 페이지를 아무런 문제없이 계속해서 밀어 넣을 수 있습니다. 나는 빠른 코드 did을했다. https://codepen.io/anon/pen/NALzWZ. 뒤로 버튼은 popPage()를 실행하지만 볼 수 있듯이 동일한 page2.html 템플릿을 아무런 문제없이 반복해서 탐색 스택에 푸시합니다. 일반적으로 오류가 발생하거나 보게되면 다른 일이 발생합니다. – Munsterlander
이 문제는 iOS 또는 브라우저에서만 발생합니까? 'fade-ios' 애니메이션을 사용하면 어떻게됩니까? –
나는 조금 작아서 이제는 에뮬레이터 만 사용할 수 있습니다. Android 및 iOS의 Ripple 에뮬레이터에서 발생합니다. 오류를 재현하는 CodePen을 추가했습니다. – rancor1223