問題タブ [ember-controllers]
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.
ember.js - ember 2.0: 複数のルートで同じコントローラーを使用する
ember 2.0 のルートで使用するコントローラを指定する方法は? デフォルトでは、各ルートには独自のコントローラーがあり、コントローラーのコードがない場合は、実行時にデフォルトの空のコントローラーが生成されます。
複数のルートが同じコントローラー (およびモデル) を共有するように指定したいと考えています。古いバージョンの emberのドキュメントでは、ルート定義で「controllerName」プロパティを使用してコントローラーを指定することが可能ですが、ドキュメントのその部分は最新の ember バージョンでは削除されています。そして、controllerName プロパティをテストしても機能しません。
ember.js - 別のコントローラーの残り火でアプリケーションコントローラーのプロパティをバインドする方法
ApplicationController に検索プロパティがあり、検索の入力フィールドにリンクされています。ProjectControllerでApplicationControllerの検索フィールドにアクセスしたい。同期する必要があります。次のコードを使用しますが、機能しません。
/ app/controllers/projects/index.js (プロジェクト コントローラー)
/ app/controllers/application.js (アプリケーション コントローラー)
アプリケーション.hbs
{{input value = search}
}
ember.js - コントローラーでモデル コレクションにアクセスする - Ember2.5
コントローラーで計算されたプロパティを作成するときにコントローラーのモデルにアクセスしようとすると、次のエラーが発生します。
model.uniqBy is not a function
app/controller/ticket.js
コントローラーに与えているモデルは から返されたコレクションですがthis.store.findAll('ticket');
、それを反復しようとすると上記のエラーが発生するようです。モデルに与えられたコレクションは、Ember.Enumerable オブジェクトではないはずですか? DS.Store を介してコレクションにアクセスしようとする必要がありますか (その場合、モデルをコントローラーに渡す必要性がわかりません)。
ember.js - EmberJS の入力値をコントローラーのオブジェクトまたは配列に格納する方法
Ember eachヘルパーを介してプログラムで表示されるいくつかの入力フィールドがあります。これらの入力は、データベースから返されるデータに関連しており、必要に応じて使用できる各入力に対応する一意の ID があります。
私の質問は、これらの動的に生成された入力の値をコントローラーに保存して、ユーザーの入力データにアクセスできるようにするにはどうすればよいですか? 私はこのようなことをしようとしていました:
ただし、この方法でオブジェクトまたは配列にアクセスしようとすると、値を指定する際の上記の構文に関連するビルド エラーが発生します (オブジェクトのドット表記もビルド エラーの原因になります)。
つまり、入力フィールドの値をコントローラーのプレーン変数としてではなく、オブジェクトまたは配列のプロパティとして保存しようとしています。フォーム内のすべての入力からの入力データに、次のフォームの「inputData」変数からアクセスできるようにしたいと思います。
主な問題は、ビルド エラーを発生させずにハンドルバー コードで動的キー (solutionType.id から) を使用することです。
value 属性を使用してこれを行うことができないが、アクションまたは他の何かを使用してこれを達成する方法を知っている場合、私はあなたのアイデアを大いに受け入れます。
ember.js - コンポーネントにデータを渡す EmberJS 2.7 が失敗する
この問題に関する多くの質問を読みましたが、ここにある問題はないようです。
私はサードパーティのコンポーネント (ember-highcharts) を使用していますが、これは問題なく動作します。
ダッシュボードと呼ばれるルートがあります。今のところ、このルートはダミーデータを使用しているだけで、ストアは使用していません。これは問題を説明するのに役立ちます。
テンプレート/ダッシュボード.hbs
ルート/dashboard.js
templates/components/summary-chart.hbs
components/summary-chart.js
モデルが未定義で、概要チャート コンポーネントに渡されないのはなぜですか? チャートはレンダリングされますが (タイトルが表示されます)、モデルが定義されていないため、もちろんデータはプロットされません。
コンポーネントをこれに変更すると、データはコンポーネントに対して「ローカル」になり、グラフはデータ ポイントでレンダリングされます。
templates/components/summary-chart.hbs
components/summary-chart.js
「summaryData」は「modelTestData」と同じデータ構造であるため、チャートはそれをプロットする方法を理解することに注意してください。
私が理解していないのは、ルート/コントローラーの組み合わせがモデルを子コンポーネントに渡さない理由です。
ember.js - ember js の three.js アニメーション
ember js でアニメーション用に three.js のレンダリング ループを作成するにはどうすればよいですか。私が今まで持っているコードは
私が得ているエラーはthis
で定義されていませんrequestAnimationFrame
。これを通過する適切な方法は何ですか?
javascript - Ember 2、関係モデル(hasMany、begsTo)をフィルタリングし、関係に基づいて計算されたプロパティを計算します
これらは私のファイルです:
モデル
アプリ/モデル/バスケット.js:
アプリ/モデル/box.js:
app/models/cart-line.js:
アプリ/モデル/product.js:
ルート
app/routes/basket.js:
コントローラー
app/controllers/basket.js:
質問:
私は初心者なので、勉強して間違いを犯しています。ごめん。
1)最初にルートに入ったときにEmber で関係をフィルターするのに最適な方法はどれですか? たとえば、アプリ内のすべてのボックスをロードしますboxes: this.store.findAll('box')
。すべてのボックスを webapp にロードするのではなく、バスケットに 1 つだけロードする方法が必要です。バックエンドから直接「フィルター付きクエリ」が必要ですか?
更新された質問
2) 小計を計算するための最良の Ember の方法はどれですか? さて、以下のコードで、Ember は subTotal を提供しますが、promise の直後console.log(tot)
です! なぜこれ?どうすれば約束を待つことができますか? 何をすべきかわかりません:
テンプレート [object Object] で提供されるのは、hbs{{log subTotal}}
とコンソールでも使用しているためです。
subTotal called: 0
製品が 0 個でも 1 個でも 1000 個でも、3 回表示されるのはなぜですか。彼 は いつも 3 回 電話 を かけ ますsubTotal called: 0
.なぜ?
promise で計算されたプロパティを使用するのは良いことですか?
3) 私はその関係のカプセル化で正しいですか?
更新された質問 2 :
今、私はこのコードを使用していますが、成功していません:
コメントは多くの試みのためのものです。
私が使用するテンプレートでは:
しかし、コンテンツpromise
がありnull
ます。
どこが間違っていますか?
間違っていreturn
ますか?
このコードは「有望」ですか?