2016-07-08 6 views
5

Pracuję nad aplikacją jonową. Który ma listę artykułów na mojej stronie głównej, a każdy artykuł ma ikonę komentarza, która powinna służyć jako link do sekcji komentarzy na stronie artykułu.Kątowe - jak utworzyć łącze z jednej strony na inną stronę i przewiń do zakotwiczenia jonowego bez użycia id

Jak mogę utworzyć link z tej strony głównej, aby przejść do zakotwiczenia w sekcji komentarzy na stronie artykułu?

Updated

Od kątowe zastosowania „adresów URL” Po #, to nie będzie działać, aby połączyć do zakotwiczenia przez identyfikator, który został zaproponowany w odpowiedzi, więc szukam innego sposobu, aby zrobić to. Próbowałem kilku rozwiązań, ale żadna z poniższych czynności nie działała.

W tym przypadku czasami otrzymuję poprawną wartość dla przesunięcia górnego, ale po zmianie na inną stronę artykułu wartość pozostaje taka sama.

Jest to kod mam zrobić:

Artykuły Widok:

<a ng-click="commentLink({{article.id}})"> 
       <img class="social-images" src="icons/comment.svg"/> {{ article.comments.length }} 
      </a> 

Artykuł Widok:

<a name="comments-section"></a> 

Kontroler:

$scope.commentLink = function(articleId) { 
    return $state.go('main.article', {id: articleId}).then(function(state) { 
     var position = $ionicPosition.offset(angular.element(document.getElementsByName('comments-section'))); 
     console.log(position.top); 
     $ionicScrollDelegate.scrollTo(position.left, position.top); 
    }) 
    }; 

Próbowałem również to, oparte na tym article, ale nadal nie ma szczęścia:

Kontroler:

$location.hash('comments-section'); 
    var handle = $ionicScrollDelegate.$getByHandle('articleDelegate'); 
    handle.anchorScroll(true); 

Widok:

<ion-content delegate-handle="articleDelegate"> 

<a id="comments-section"></a> 

Odpowiedz

2

Jeśli sekcja komentarz ma identyfikator (np. id = „new-komentarz”), a następnie od strony przedniej, można spróbować:

<a ng-click="goToComment()">...</a> 

aw regulatora:

$scope.goToComment = function() { 
    return $state.go('whatever the comment state is',   {param:param}).then(function(state) { 
    $location.hash('new-comment'); 
    $ionicScrollDelegate.anchorScroll(true) 
    }) 
} 
+0

Właśnie testowałem go i wydaje się, że nie działa pierwszy gdy klikniesz, a także wydaje się, że nie jest odświeżający lub przypomina sobie stan, ponieważ kiedy zaczyna działać, kiedy klikam normalny link, po tym, jak już wszedłam na poprzednią stronę z linkiem do zakotwiczenia, wydaje mi się, że zapamiętaj, że i otwiera stronę na tej kotwicy, a URL ma to hash. @Ladmerc – Marco

Powiązane problemy