In relazione alla domanda Passing default variables to view, per passare variabili disponibili tra tutti i punti di vista, c'è una differenza tecnica o funzionale tra l'uso di View::composer()
:laravel: Differenza tra Mostra :: quota() e vista :: compositore()
View::composer('*', function($view) {
$thundercats = 'Woooooohh!!';
$view->with('thundercats', $thundercats);
})
nel file filters.php o l'uso di View::share()
nel BaseController.php di file:
public function __construct {
$thundercats = 'Woooooohh!!';
View::share('thundercats', $thundercats);
}
ho su Recentemente ho appreso su View::share()
e lo trovo eccezionalmente intrigante sebbene abbia già iniziato a usare il primo in un altro progetto.
Edit:
La mia prima ipotesi è che il primo è un file (filters.php), mentre il il secondo è una classe (BaseController.php). Con questo in mente, immagino che una classe sia molto meglio? Anche se, non sono del tutto sicuro del perché a questo punto. :)
Vedo. Quindi, per semplicità, se tutto quello che vuoi è di generare una variabile 'globale', allora è meglio usare 'View :: share()'. Per qualsiasi altro/più di questo, usa 'View :: composer()'. – enchance
Per semplicità, certo, tuttavia se ti ritrovi a definirlo più e più volte probabilmente lo si astragga in un 'View :: compositore'. – tplaner
Controlla anche questa risposta http://stackoverflow.com/a/23857517/682754. Entrambi mi hanno davvero aiutato a capire la differenza. – Carlton