問題タブ [ejs]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1380 参照

ruby-on-rails-3 - カスタム ハンドラを使用する Rails の部分テンプレートが html をエスケープしている

アプリケーションで複雑な機能を実行するために、クライアント内で JavascriptMVC と ejs テンプレートを使用して Rails 3.1 アプリに取り組んでいます。残念ながら、ejs 構文は erb 構文と非常に似ているため、コードを同じファイルに保持することはできません (ただし、これを行う良い方法を誰かが知っていれば、私は有頂天になります)。最終的には、ejs テンプレート (I18n など) 内にいくつかの Rails コードを適用できるようにしたいと考えていますが、この時点では、これを機能させるために解決します。

この質問の例に従って、次のようなカスタム テンプレート ハンドラーを作成しました。

次に、ejs コードを含む部分テンプレートを作成しました: _jmvc_templates.html.ejs

既存のテンプレート内に、次の部分を含めようとします。

この時点で、ファイルがインクルードされ、ハンドラーが使用されますが、すべてがエスケープされるため、テンプレートの div は次のようにページにレンダリングされます。

ここで明らかな何かが欠けていると確信していますが、それが何であるかはわかりません.このテンプレートハンドラーに、すべてのhtmlをエスケープせずにejsベースのテンプレートを含めるにはどうすればよいですか?

編集:

render を html_safe で呼び出すと、次のように機能することがわかりました。

ただし、これは面倒なように思えます-erbレンダラーがハンドラーからのテキストをhtmlセーフテキストとして処理するようにする方法が必要です。

0 投票する
31 に答える
136744 参照

node.js - エラー: モジュール 'ejs' が見つかりません

ここに私の完全なエラーがあります:

私のソース コードも非常に単純です。

私のフォルダーには、使用した node_modules に ejs がインストールされていますnpm install ejsここに画像の説明を入力だから私の質問は..何が得られますか? 明らかにインストールされているときにノードがEJSを見つけられないように、私は何を間違っていますか?

ありがとう

0 投票する
2 に答える
667 参照

javascript - Rails 3.1 の EJS gem が JavaScript テンプレートを正しくコンパイルしない

Rails 3.1 でのテンプレート作成に EJS gem を使用しようとしています。application.js ファイルでテンプレートが必要な場合

クライアント側で取得した出力は、テンプレートを匿名関数でラップして名前空間にしていますが...それだけです。これは私が得る生成された出力です。

テンプレートが文字列にコンパイルされることを期待しています。それは私が過去に Jammit で経験したことです。手動で行う必要がありますか? 何か不足していますか?

前もって感謝します、

0 投票する
2 に答える
1214 参照

javascript - EJS 複数のテンプレートを 1 つのファイルに

私は EJS と Backbone をいじっていて、疑問に思っていました: 1 つの .ejs ファイルに複数のテンプレートを含める方法はありますか? 私は常にレンダリングする必要があるさまざまなビューのセットを持っていますが、複数の GET リクエストを無駄にするのはあまり賢明ではないようです。しかし、ドキュメントやグーグルで実際に何も見つけることができませんでした。パーシャルがあることは知っていますが、クライアント側でレンダリングするため、実際には役に立ちません。

または、私のためにこれを行うことができる別のクライアント側テンプレート ライブラリがありますか?

ありがとう

0 投票する
1 に答える
654 参照

javascript - hamlテンプレートのJSステートメント

テンプレートには、ror3+backbone.jsとejs+haml+haml_assetsを使用します。テンプレートでif/elseステートメントを使用する必要があります。jst.ejsテンプレートでは、次のことができます。

しかし、jst.ejs.hamlでは機能しません。hamlテンプレートでjsステートメントを使用するにはどうすればよいですか?

0 投票する
3 に答える
3832 参照

node.js - Express + node.js + ejs のコード ラッパーのタイプの変更

クライアント側の ejsでは、ejs コードをマークする[% code %]代わりに使用<% code %>しますが、サーバー側でもエクスプレスを使用して同じことを行いたいと考えています。クライアント側では、次のようなことをしますvar template = new EJS({text: template_src, type:'['});

ここに私のノードコードがあります:

このオプションを変更できるように、「タイプ」パラメーターをどこに設定しますか

0 投票する
8 に答える
215352 参照

conditional-statements - Can I use conditional statements with EJS templates (in JMVC)?

and if yes, what is the syntax? My goal is to prepend an 's' to the word 'comment' when there is more than one. in an jQuery.ejs template in a JMVC app. The following breaks. I can't find any docs for conditionals...

0 投票する
1 に答える
2862 参照

node.js - ejsは変数をパーシャルに送信します

SO と google と EJS サイトを精査しましたが、何も見つかりませんでした。ドキュメントへのリンクがある場合は、共有してください。

rooms.ejs というビューがあり、次のようにロードします。

これは、そのビュー (rooms.ejs) 内にあるものです。<%- partial('room', rooms) %>

部分的なプリント<%= room.owner %>. うまくいきます。

パーシャルの名前を rooms_partial に変更しようとしましたが、送信された変数名が機能しなくなったことがわかりませ<%= room.owner %><%= rooms_partial.owner %>

0 投票する
5 に答える
6414 参照

ruby-on-rails - バックボーンレールを備えたRails:EJSファイルのアセットヘルパー(image_path)

codebrew/backbone-railsを使用するRails3.1アプリがあります。.jst.ejsテンプレートに、次のような画像を含めたいと思います。

ただし、もちろん、アセットヘルパーはJavaScriptでは使用できません。

EJS構文がERBと競合するため、ERBの連鎖(.jst.ejs.erb)は機能しません。

これが私が知っていることです:

  • アセットヘルパーはブラウザーで使用できないため、サーバー側で実行する必要があります。
  • サーバーにさまざまなアセットパスを(データ属性または<script>JSONを介して)HTMLにダンプさせ、それらをJSに読み戻すことで問題を回避できますが、これはかなり厄介なようです。

EJSファイルでアセットヘルパーを何らかの方法で使用する方法はありますか?

0 投票する
3 に答える
1457 参照

backbone.js - バックボーン.jsで多くのjavascriptテンプレートに1つの大きな外部ファイルを使用しますか?

バックボーンアプリを提供する2つの異なるHTMLページがあります。これまで、すべてのjsテンプレートをそれぞれのHTMLファイル内に配置してきました。

今、私は少しリファクタリングしていて、ファイル間でいくつかのバックボーンビューを共有したいと思います。jsテンプレートが見つからないビューを読み込むと、アプリ全体がエラーになります。これら2つをマージする適切な方法は、たとえばEJSを使用して外部のjsテンプレートを作成し、ファイルごとに1つ<script type='text/template'>のテンプレートを作成することですが、テンプレートHTMLファイルを埋め込んで共有する巨大なHTMLファイルを1つだけ作成したいと思います。私の2ページの間。これは可能ですか?AJAXを使用して外部jsテンプレートを取得し、それらをヘッドに書き込んでみましたが、バックボーンビューはまだそれらを見つけることができません。

他の誰かがその中に多くのjavascriptテンプレートを含むファイルを持つことを選択しますか?また、ejsを使用すると、管理できない数のファイルが開いていることがわかりました。どんな助けでも大歓迎です。