問題タブ [grunt-ember-templates]

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

ember.js - 指定された data-template-name に一致するテンプレート名は何ですか?

grunt-ember-templatesを使用してテンプレートをプリコンパイルしています。このツールは、予想どおり、私のテンプレートをEmber.TEMPLATES配列に入れています。の構成を微調整していますgrunt-ember-templatesEmber.TEMPLATESそのために、配列で予想されるキーは何かを知りたいです。このテンプレートがあるとしましょう:

現在、このテンプレートは というファイルapp/templates/phones_index.hbsにあり、grunt-ember-templatesコンパイル済みのテンプレートを に入れてEmber.TEMPLATES["app/templates/phones_index"]いますが、これは間違っています。

の予想されるキーは何data-template-name="phones/index"ですか?

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

javascript - 事前にコンパイルされたテンプレートで最新の ember を使用することはできません

最新の ember スターター キットをインストールしました。それは持っています:

  • Ember.VERSION : 1.0.0-rc.5
  • ハンドルバー.バージョン: 1.0.0-rc.4
  • jQuery.バージョン: 1.9.1

grunt-contrib-handlebars@0.5.9テンプレートをプリコンパイルするために使用しています (これは利用可能な最新バージョンです)。そのパッケージに含まれているハンドルバーのバージョンはわかりませんが、アプリケーションの起動時に次のエラーが表示されます。

私は別のハンドルバーのランタイム (バージョン ) を読み込もうとさえし1.0.0-rc.3ましたが、ember はそれについて満足していません:

したがって、ember には 1.0.0-rc.4 が必要ですが、このバージョンで利用できる grunt プリコンパイラはありません。キャッチ22?

コンパイル済みのテンプレートを削除する必要がありますか? Emberをアップグレードするたびにこの中断が発生するのは非常に面倒です...

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

javascript - Ember、Handlebars、Contrib-Ember-Templates がモバイル ブラウザーで不正な形式のテンプレートを生成する

Gruntjs プラグイン contrib-ember-templates を使用すると、モバイル ブラウザーで表示すると正しくない結果が生成されます。

生成されたテンプレート

ただし、ライブ デバッグを介してテンプレートを編集すると、望ましい結果が得られます。

希望のテンプレート

追加情報

  • この問題は、縮小された EmberJS (リリース ビルド) を使用している場合にのみ発生します。

  • この問題は、デスクトップ ブラウザーでは発生しません。

  • この問題は、コンソール メッセージを生成しません。

  • grunt --verbose を実行しても、エラー/警告メッセージは表示されません。

技術スタック

NodeJS - v0.10.12

うなり声-cli v0.1.9

うなり声 v0.4.1

grunt-contrib-templates - 0.4.10

JQuery - v1.10.2

これらは、contrib-grunt-template とフロントエンド クライアント アプリケーションによって使用されます。

EmberJS - v1.0.0-rc.6-15-gfe89337 (縮小版)

ハンドルバー - 1.0.0

編集:

この問題は、ビューがテンプレートで使用されている場合にのみ発生します。

コンパイルされていないテンプレート

インデックス ビュー

編集:

これを、特にテンプレートのこの行に絞り込みました。

0 投票する
0 に答える
973 参照

ember.js - サブフォルダー内で定義されたコンポーネント テンプレートは、grunt-ember-templates を使用してそれらをコンパイルするときにエラーを引き起こします

私たちは、ember コンポーネントに大きく依存しています。最初は、「templates/components」フォルダー内に記述されたコンポーネントに関連付けられたすべての hbs テンプレートがありましたが、コンポーネントの数が増えているため、より多くの構造を提供し、コンポーネント フォルダー内のサブフォルダー内のテンプレートを定義したいと考えました。そうするとき、emberは不平を言います

[SUBFOLDER] 名前空間で [XYZ] コンポーネントを探していますが、名前空間が見つかりませんでした

私のコンパイル済みテンプレートは次のようになります。

しかし、次の変更を加えればうまくいきます:

私が今持っている回避策は、このように gruntfile を変更することです

これが残り火なのか他の何かなのかはわかりません。しかし、より良い解決策を期待して、そこに質問を出しています。

更新 コンポーネントのロード方法が原因で問題が発生したようです。基本的に、次のように渡すパラメーターに基づいてコンポーネントをロードするヘルパー関数を使用しています。

Ember.Handlebars.helpers を確認したところ、コンポーネント内の任意のフォルダー内で定義されたコンポーネントがないようです。

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

templates - キャッチされないエラー: テンプレートはハンドルバーの古いバージョンでプリコンパイルされました

grunt-ember-templatesフロントエンドの依存関係を管理し、ハンドルバー テンプレートをプリコンパイルするために Bower を使用しています。

の依存関係は次のbower.jsonとおりです。

...そしてでpackage.json

ただし、Ember アプリケーションをコンパイルして実行すると、次のエラーが発生します。

Assertion failed: Ember Handlebars requires Handlebars version 1.0 or 1.1, COMPILER_REVISION expected: 4, got: 5 - Please note: Builds of master may have other COMPILER_REVISION values.

Uncaught Error: Template was precompiled with an older version of Handlebars than the current runtime. Please update your precompiler to a newer version (>= 2.0.0) or downgrade your runtime to an older version (<= 1.0.rc.2).

そして、これらはバージョンです:

ご覧handlebarsのとおり、依存関係として明示的に言及されていませんが、Ember によって解決されています。しかし、どういうわけか、新しい (互換性のない) バージョンに解決されます。

のバージョンを修正するにはどうすればよいhandlebarsですか?

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

ember.js - Grunt でコンパイルした Ember.js テンプレートを HTML ファイルのどこに配置すればよいですか?

私は単純な Ember.js と Express アプリに取り組んでおり、これまですべてのテンプレートがindex.htmlファイルに含まれていました。Grunt をプリコンパイル テンプレート以外に使用するのはこれが初めてです。(私はGrunt-Ember-Handlebarsを使用してコンパイルに取り組んでいます)

すべてのテンプレートをフォルダーに移動し、同じフォルダーhandlebarsにコンパイルします。templates.js

私の質問はこれです: templates.jsHTML ファイルにリンクするスクリプト タグをどこに含めればよいですか?

すべてのスクリプトをレイアウトする方法は次のとおりです。

私のtemplates.jsファイルへのパスは正しいので、問題はありません。ただし、常に次のエラーが返されます。

アサーションに失敗しました: 「インデックス」テンプレートまたはビューが見つかりませんでした。

後で含める必要があることがわかっている唯一のファイルは、私のember.jsファイルです。それ以外は、アプリ内のファイルの前後に含めても、エラー出力に違いはありません。

事前に助けてくれてありがとう!

編集: ここに私のGruntfileがあります:

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

ember.js - Ember.js:テンプレートでモデルの一部だけを表示するには?

テンプレートでは:

モデル内のすべてのアイテムが表示されます。

しかし、インデックスに依存する一部のアイテムのみを表示したい(例: index%2==0 の場合にアイテムを表示)。

それについて何か考えはありますか?ありがとう