21
私はHamlビューのRailsアプリケーションを持っています。アプリケーションのいくつかの部分にAngularJSを追加したいのですが、Hamlビューがサーバー側でレンダリングされ、AngularJSコードがクライアント側でレンダリングされるため、AngularJSコードが機能しないという問題があります。RailsアプリケーションのHamlビュー内でのAngularJSの使用
のは、私はちょうどこの私の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'}}.
ので、現在、それだけで、実際にそれを処理せずに、中括弧内のすべてのものをプリントアウトしています。解決方法はありますが、完全なビューがAngularJSテンプレートに置き換えられている状況での解決策です。私はAnglesJSを主に私のRailsアプリケーションの小さな機能用に使いたいと思っています。任意のアイデアをどのようにこれを解決するには?私は少しここにコードを編集した
おかげで、動作します。私は、角度のあるアプリにHTMLタグで名前を付けても間違いを犯しましたが、名前空間は作成しませんでした。 – John
ハムの非常に小さな改善点の1つは、%html {"ng-app" => true}または%html(ng-app = true)と書いて、どちらも空文字列なしでになります。 –
'haml 4.0.5'(Rails 4の下)では'%html(ng-app) 'に行くことができます。 –