2015-03-30 12 views
5

Sto usando il framework php laravel per l'esecuzione del codice e voglio che angularjs gestisca il routing per me. Ho un esempio qui: http://embed.plnkr.co/dd8Nk9PDFotCQu4yrnDg/preview che mi mostra come passare da una pagina all'altra usando i metodi di routing angularjs ma usano semplici file .html per rendere il contenuto. È un campione che ho trovato su internet.Come utilizzare insieme il routing di laravel e angularjs?

Inoltre in laravel ha le proprie rotte. Come posso guidare il router angularjs per chiamare la rotta laravel e rendere di conseguenza la pagina dopo aver recuperato il contenuto dal database? Sono nuovo di Angularjs. Grazie.

+0

Si sta utilizzando un laravel un provider di API (e così la richiesta via REST) ​​o vuoi laravel per rendere le vostre pagine con il suo sistema di template ? – Blackus

+0

cosa suggeriresti. Sono confuso qui. Voglio solo usare angluar js in modo che quando si fa clic su qualsiasi link non si dovrebbe ricaricare la pagina. e renderizza il contenuto in d ng-view –

+0

Vuoi sviluppare la tua applicazione di frontend con AngularJS, ho capito. Ma come stai usando Laravel? Metti Angular nella tua vista di Laravel (spero di no, è una pessima idea)? – Blackus

risposta

3

Ci sono un paio di metodi per raggiungere l'obiettivo, ma NON si usa più lama. Qui sto solo spiegando il modo più semplice.
1. Creare un index.php (non index.blade.php), nel vostro routes.php, si dispone:

Route::get('/', function() 
{ 
    return View::make('index'); 
}); 

tornerà la pagina indice.
In index.php, si prega di includere

<script src="//ajax.googleapis.com/ajax/libs/jquery/2.0.3/jquery.min.js"></script> 
    <script src="//ajax.googleapis.com/ajax/libs/angularjs/1.2.8/angular.min.js"></script> 
<script src="http://code.angularjs.org/1.2.3/angular-route.js"></script> 

o le dipendenze locali.

  1. Nella cartella pubblica, è possibile creare una cartella denominata "js", un'altra cartella denominata "modelli".

  2. Nel file "js", crea il tuo "app.js", "controller.js", e così via (non dimenticate di includere nel vostro index.php)

  3. Nella cartella "templates", verrà creato il modello html. Nella tua data esempio, sono "home.html", "about.html", "contact.html"

  4. Nella pagina di indice, si fa l'instradamento angolare qui.
    app.js:

    var app = angular.module('app', [ 'ngRoute' ]); app.config(function($routeProvider) { $routeProvider .when('/', { templateUrl : 'templates/home.html', controller : 'mainController' })

     .when('/about', { 
          templateUrl : 'templates/about.html', 
          controller : 'aboutController' 
         }) 
    
         .when('/contact', { 
          templateUrl : 'templates/contact.html', 
          controller : 'contactController' 
         }); 
    }); 
    
+0

quindi questo significa che tutte le richieste verranno inviate alla pagina predefinita del prefisso e quindi angolare la gestirà? perché se usi un router angolare su un'altra pagina html comune se passo un percorso angolare a browser di ricerca mi dà un errore 404 – Kross

Problemi correlati