問題タブ [swig-template]

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 に答える
522 参照

javascript - オブジェクトの配列で数学演算を実行するjavascript

var budget = 300;ノードを使用してeCommerce/financial ベースのアプリケーションを作成する

変数から価格が差し引かれbudget、テンプレートに表示されます

ps imはexpressとswigを使用しています

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

javascript - Nodejs swig、部分文字列、または制限文字

文字列を制限する方法はありますか? 例:

それとも部分文字列関数ですか?

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

node.js - consolidate で swig オプションを設定する

私は現在、統合でswigを使用していますが、正常に動作します:

ここで、swig optionsを調整して、たとえば autoescaping のデフォルト値を変更したいと思います。

どうすればそれができるか考えていますか?

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

node.js - Swig テンプレート エンジンの for ループ

Express.js のテンプレート エンジンとしてSwigを使用していますが、次のような変数で for ループを作成する方法が見つかりませんでした。

これは可能ですか?

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

node.js - node.JS エクスプレス パスポート ルーティング

ホーム、連絡先、および概要の 3 つのページを持つ単純なプロジェクトを作成しました。

すべてが機能していたので、mongo でユーザー登録を追加したいと考えました。

だから私はこのチュートリアルに従った

しかし、いくつかの新しいルートを追加すると、それ以上ページにアクセスできなくなります。

これが私index.jsの3つのページにアクセスできるときでした

すべてシンプルで機能しています。そして今、それはそのようなものです:

現在、ルートは表示されていません。

何か案は ?

ありがとう !

編集 : app.js

0 投票する
4 に答える
1911 参照

javascript - 生の JSON データがコピーされないように保護する

Node.js と Mongo DB でアプリケーションを作成し、Swig でビューをレンダリングしています。ビジネス名、住所、地理的位置データのデータベースがあり、Google マップにピンでプロットされています。

ビュー ソース、Firebug、Chrome 開発ツールなどを使用して、ユーザーが生の JSON データを簡単にコピーできないようにしたいと考えています。

私は銀行レベルのセキュリティを求めているわけではありません。ほとんどのユーザーがあきらめるのを難しくしたいだけです。

JSON パッケージをブラウザーに配信するには、次の 2 つのルートがあります。

1) Swig を使用して、JSON パッケージをビューに直接渡します。問題は、単純なビュー ソースが JSON を表示することです。

2) AJAX 呼び出しでデータを要求します。このシナリオでは、Chrome 開発ツールを使用してデータに簡単にアクセスできます。

私のオプションは何ですか?

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

intellij-idea - Swig テンプレート エンジンの WebStorm 構文の強調表示

与えられた:

Swig の強調表示を修正できるはずですが、道半ばです。

以下は、私が得た結果の強調表示です。Swig コードは期待どおりに強調表示されますが、HTML は強調表示されなくなりました。

HTML textmate バンドルもインストールして有効にしようとしましたが、HTML と Swig バンドルの両方が有効になっていると、コードが HTML のみとして強調表示されます。HTML バンドルを無効にしても、Swig バンドルがまだアクティブな場合、Swig の強調表示のみが表示されます。

私の質問: Windows の WebStorm で、同じファイルでハイライトされた Swig コードと HTML コードを取得するにはどうすればよいですか?

結果:

ここに画像の説明を入力

これは、WebStorm 9 での私の Textmate バンドル構成です。

ここに画像の説明を入力

ここでも、HTML バンドルを選択して有効にするだけでは機能しません。

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

javascript - Express + Swig HTML レンダリング時間を最適化する

私は重大な問題に直面しました。

私のアプリケーションアーキテクチャは次のように記述されています:

nginx -> Web アプリ (express/nodejs) -> api (jetty/java) -> mysql

API アプリケーションは十分に最適化されているため、そのパフォーマンスについてここで言及する必要はありません。(100 リクエスト/秒で ~200 ミリ秒/リクエスト)

私のウェブアプリケーション:

  1. 特急
  2. Swig テンプレート エンジン

プロファイル ログを実行しているときに、Swig テンプレート エンジンによる HTML レンダリング時間が I/O をブロックしすぎることに気付きました。そのため、保留中の他のリクエストの待機時間が大幅に増加します。

1MB の text/html レスポンスをレンダリングする場合、Swig テンプレートは最大 250 ミリ秒かかります。


これが私のストレステストの出力です:

ご覧のとおり、リクエストが遅いほど、待ち時間が長くなります。

いくつかのコードを変更して、HTML をレンダリングする代わりに応答コードを返す場合:

ストレス テストの出力は次のように変わります。


以前に実装しようとした解決策がいくつかありますが、応答時間を短縮できるものはありません。

node-clusterを使用します(サーバーに 2 つのワーカー)

JXCoreを 16 スレッドで使用する(最大スレッド数なし)

NGINX 負荷分散を使用する

4 つのノード プロセスを開始する

nginx.conf

上記のすべてのソリューションは、HTML レンダリングなどの重いタスクを実行するときに相互にブロックしない複数のプロセス/スレッドを提供すると考えましたが、結果は私の期待と同じではありません: 待ち時間は短縮されません. ログには、リクエストが実際には複数のプロセス/スレッドによって処理されていることが示されています。

ここで見逃しているポイントはありますか?

または、待ち時間を短縮するための別の解決策を教えてください。

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

swig-template - parse.jsでfilterApplyIdxは何を意味しますか?

私は、swig.js を Django でより使いやすくするために取り組んでいます。ほとんどのコードは理解できますが、parse.js は理解できます。

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

node.js - node.js の Swig テンプレートでのブラケットのバグの使用

swig テンプレートは、ステートメント内の括弧内に 2 つの条件を含めるなどの基本的なことを実行できないようにif思われるため、コードを複製することなくこれをどのように処理するのか疑問に思っていました。

Swigがサポートしていないため、現在はビューが壊れています...