問題タブ [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.
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セーフテキストとして処理するようにする方法が必要です。
node.js - エラー: モジュール 'ejs' が見つかりません
ここに私の完全なエラーがあります:
私のソース コードも非常に単純です。
私のフォルダーには、使用した node_modules に ejs がインストールされていますnpm install ejs
。
だから私の質問は..何が得られますか? 明らかにインストールされているときにノードがEJSを見つけられないように、私は何を間違っていますか?
ありがとう
javascript - Rails 3.1 の EJS gem が JavaScript テンプレートを正しくコンパイルしない
Rails 3.1 でのテンプレート作成に EJS gem を使用しようとしています。application.js ファイルでテンプレートが必要な場合
クライアント側で取得した出力は、テンプレートを匿名関数でラップして名前空間にしていますが...それだけです。これは私が得る生成された出力です。
テンプレートが文字列にコンパイルされることを期待しています。それは私が過去に Jammit で経験したことです。手動で行う必要がありますか? 何か不足していますか?
前もって感謝します、
あ
javascript - EJS 複数のテンプレートを 1 つのファイルに
私は EJS と Backbone をいじっていて、疑問に思っていました: 1 つの .ejs ファイルに複数のテンプレートを含める方法はありますか? 私は常にレンダリングする必要があるさまざまなビューのセットを持っていますが、複数の GET リクエストを無駄にするのはあまり賢明ではないようです。しかし、ドキュメントやグーグルで実際に何も見つけることができませんでした。パーシャルがあることは知っていますが、クライアント側でレンダリングするため、実際には役に立ちません。
または、私のためにこれを行うことができる別のクライアント側テンプレート ライブラリがありますか?
ありがとう
javascript - hamlテンプレートのJSステートメント
テンプレートには、ror3+backbone.jsとejs+haml+haml_assetsを使用します。テンプレートでif/elseステートメントを使用する必要があります。jst.ejsテンプレートでは、次のことができます。
しかし、jst.ejs.hamlでは機能しません。hamlテンプレートでjsステートメントを使用するにはどうすればよいですか?
node.js - Express + node.js + ejs のコード ラッパーのタイプの変更
クライアント側の ejsでは、ejs コードをマークする[% code %]
代わりに使用<% code %>
しますが、サーバー側でもエクスプレスを使用して同じことを行いたいと考えています。クライアント側では、次のようなことをしますvar template = new EJS({text: template_src, type:'['});
ここに私のノードコードがあります:
このオプションを変更できるように、「タイプ」パラメーターをどこに設定しますか
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...
node.js - ejsは変数をパーシャルに送信します
SO と google と EJS サイトを精査しましたが、何も見つかりませんでした。ドキュメントへのリンクがある場合は、共有してください。
rooms.ejs というビューがあり、次のようにロードします。
これは、そのビュー (rooms.ejs) 内にあるものです。<%- partial('room', rooms) %>
部分的なプリント<%= room.owner %>
. うまくいきます。
パーシャルの名前を rooms_partial に変更しようとしましたが、送信された変数名が機能しなくなったことがわかりません<%= room.owner %>
。<%= rooms_partial.owner %>
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ファイルでアセットヘルパーを何らかの方法で使用する方法はありますか?
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を使用すると、管理できない数のファイルが開いていることがわかりました。どんな助けでも大歓迎です。