2017-01-10 3 views
0

Ich versuche, eine einfache Umleitung mit eckigen ng-click zu erstellen. Aber wenn ich auf den Knopf klicke, passiert nichts und es werden keine Fehler geworfen.umleiten auf Seite auf NG-Klick

Unten ist mein Code

HTML

<div ng-app='RedApp' ng-controller='CountCtrl'> 
    <button ng-click='clickclick(1)'> 
    Click to redirect 
    </button> 
</div> 

JS

var app = angular.module('RedApp',[]); 

    app.controller('CountCtrl',function($scope){ 
    $scope.clickclick = function (cid) { 
    $location.path('/page/'+cid); 
}; 
}); 

Ich habe gerade angefangen Winkel :) zu lernen, kann mir jemand sagen, was ich hier falsch mache?

jede Hilfe wird geschätzt.

Antwort

1

Sie verpassen den Standort beim Definieren des Controllers. Der richtige Code ist unten angegeben:

app.controller('CountCtrl', function($location, $scope){ 
    $scope.clickclick = function (cid) { 
     $location.path('/page/'+cid); 
    }; 
}); 
+0

Ich habe gerade versucht es, aber es ist nichts passiert :(https://jsfiddle.net/7jos4eqn/ Jede Idee, warum? – LiveEn

+0

$ liveen Sorry, ich vergaß zu verwenden window.location für Urls außerhalb AngularJS zu erwähnen. window.location = '/ page /' + cid; – user3542450

+0

was meinst du mit "urls outside angularjs"? – LiveEn

0

Warum Sie nicht nur auf diese Weise das tun?

<button ng-href="/page/1"> <!-- or ng-href="#/page/1" if your base contains # --> 
    Click to redirect 
</button> 
+0

Danke für die Antwort. Dies könnte sich als nützlich erweisen :) Eigentlich benutze ich den ng-click coz, basierend auf dem Wert, der dort übergeben wird, werden einige Berechnungen und Redirect Seite Änderungen basierend auf der Eingabe. Ich dont Sache, die mit der ng-href – LiveEn

+0

getan werden kann, da es eine eckige Komponente ist, Sie sind frei, Datenbindung darin zu verwenden, so können Sie Ihre Berechnungen tun –

+0

ich versuchte gerade dieses .. Es scheint nicht zu arbeiten . Wenn ich auf nichts klicke passiert :( – LiveEn

Verwandte Themen