laravel-5 übergibt die Variable an JavaScript

10

Gibt es irgendwelche Möglichkeiten, wie JavaScript die Variable vom kompakten Controller Laravel-5 erhalten kann.

Beispiel: Ich habe den folgenden Code:

%Vor%

Kann ich diese Sprache erhalten und an JavaScript weitergeben? Ich habe bereits PHP-Vars-To-Js-Transformer benutzt. Aber wenn ich JavaScript :: verwende für zwei Funktionen im Controller. Es hat nicht funktioniert. Irgendwelche Hilfe?

Dies ist mein Code mit PHP-Vars-To-Js-Transformer:

Sprachcontroller: Dies ist meine Erstellungs- und Bearbeitungsfunktion:

%Vor%

das ist meine Ansicht create:

%Vor%

Dies ist meine Ansicht bearbeiten:

%Vor%

meine javascript.php im Konfigurationsordner:

%Vor%

Die Idee ist: Ich habe eine Tabellensprache in MySQL. Ich möchte die Dropdown-Liste mit mehreren Attributen anzeigen lassen und auch mit angularjs suchen. Deshalb möchte ich die Variable von Controller zu JavaScript übergeben. Zusätzlich habe ich die Funktion in LanguageController mit dem Namen initLang, um zu überprüfen, ob irgendeine Sprache in der Datenbank vorhanden ist. Sie wird nicht in der Dropdown-Liste in der Erstellungsansicht angezeigt.

    
user1610851 06.05.2015, 10:27
quelle

5 Antworten

28

Ein Arbeitsbeispiel für mich.

Controller:

%Vor%

Anzeigen:

%Vor%     
ken 03.07.2015 07:32
quelle
7

Standard-PHP-Objekte

Der beste Weg, PHP-Variablen für JavaScript bereitzustellen, ist json_encode . Wenn Sie Blade verwenden, können Sie Folgendes tun:

%Vor%

Es gibt auch eine Blade-Direktive für die Dekodierung nach JSON . Ich bin mir nicht sicher, seit welcher Version von Laravel, aber in 5.5 ist es verfügbar. Verwenden Sie es wie folgt:

%Vor%

Jsonables

Wenn Laravel-Objekte z.B. Collection oder Model sollten Sie die Methode ->toJson() verwenden. Alle diese Klassen, die die Schnittstelle \Illuminate\Contracts\Support\Jsonable implementieren, unterstützen diesen Methodenaufruf. Der Aufruf gibt automatisch JSON zurück.

%Vor%

Wenn Sie die Klasse Model verwenden, können Sie die $hidden -Eigenschaft in class definieren und diese wird in JSON gefiltert. Die Eigenschaft $hidden , wie der Name beschreibt, blendet vertraulichen Inhalt aus. Also ist dieser Mechanismus das Beste für mich. Mach es wie folgt:

%Vor%

Und irgendwo in deiner Sicht

%Vor%
algorhythm 06.07.2017 17:12
quelle
3
%Vor%

dann in Sicht

%Vor%

Es ist nicht hübsch tho

    
Pawel Bieszczad 06.05.2015 14:43
quelle
2

Versuchen Sie es - Ссылка Ist eine einfache Möglichkeit, PHP-Variablen an Javascript anzuhängen.

    
PawelW 18.10.2017 08:08
quelle
0

Ich weiß, dass die nächsten Zeilen nicht optimiert sind, aber es ist ein schneller und lesbarer Weg, um es zum Laufen zu bringen:

%Vor%

Bearbeiten: Wenn die Zeichenfolge Sonderzeichen hat (wie ó ), ist es notwendig, {!! $service->name !!} zu verwenden.

    
JCarlos 15.01.2017 19:44
quelle

Tags und Links