Ich habe eine Rails App mit Haml Ansichten. Jetzt möchte ich AngularJS zu einigen Teilen der Anwendung hinzufügen, aber das Problem ist, dass die Haml-Ansichten serverseitig gerendert werden und der AngularJS-Code nicht funktioniert, da er auf der Client-Seite gerendert wird.Mit AngularJS in Haml Ansichten einer Rails App
Lassen Sie uns sagen, ich habe gerade in meinem index.html.haml:
!!!
%html{"ng-app" => "Test"}
%head
%script{:src => "http://ajax.googleapis.com/ajax/libs/angularjs/1.0.3/angular.js"}
:javascript
function Clock($scope) {
$scope.currentTime = new Date();
}
%title Welcome to AngularJS
%body
%h1 Hello, World.
%p{"ng-controller" => "Clock"}
The current time is {{currentTime | date:'h:mm:ss a'}}.
Also zur Zeit, es ist nur ohne es tatsächlich die Verarbeitung innerhalb der geschweiften Klammern alles ausdrucken. Es gibt Lösungen, aber für Situationen, in denen Ihre vollständige Ansicht durch eine AngularJS-Vorlage ersetzt wird. Ich möchte AngularJS hauptsächlich für kleine Funktionen in meiner Rails App verwenden. Irgendwelche Ideen, wie man das löst?
Danke, das funktioniert. Ich habe einen Fehler gemacht, um meiner eckigen App einen Namen im HTML-Tag zu geben, aber ich habe den Namespace nicht erstellt. – John
Eine sehr geringfügige Verbesserung gegenüber dem Haml ist das Schreiben von% html {"ng-app" => true} oder% html (ng-app = true), die beide in ohne den leeren String resultieren. –
Mit 'haml 4.0.5' (unter Rails 4) habe ich festgestellt, dass ich einfach'% html (ng-app) 'gehen kann. –