問題タブ [ember-components]
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.js アプリケーションをさまざまなアドオンに分解しようとしました。一部のコンポーネントをアドオンに移動しました。しかし、ヘルパーを使用するコンポーネントのテストでhash
、次のエラーが発生しました。
Error: Assertion Failed: A helper named 'hash' could not be found
何が原因で、どうすれば解決できますか?
ember.js - Ember - アクション内で結果が定義され、親アクションに記録された同じアクションの戻り値が未定義ですか? なんで?
すぐに次の問題があります。
Ember のコンポーネント内に次の 2 つのアクションがあります。
最初のログ (createSingleData 内、ログに記録された値を返す直前) は、予想どおり、entitySkeleton をオブジェクトとしてコンソールに書き込みます。
ただし、console.log(data) (createData 内) は「未定義」をコンソールに書き込みます。
私が尊重しなかった非同期性の側面はありますか?
PS: createSingleData 内のパラメーターもログに記録しました。それらはすべて適切に設定されています。変数コレクションも「未定義」にプッシュされるだけです。
javascript - Ember.run.later が Ember で完了した後、子コンポーネントが親関数を確実に呼び出す方法
親コンポーネントには、次のものがあります。
親テンプレートには次のものがあります。
次に、子コンポーネントには次のものがあります。
アクションが子コンポーネントから起動されると、親の someFlag が正常に変更されます。Ember.run.later
ただし、コードは、子から開始された otherFunc 呼び出しを実行する前に、親の最後の反復が実行されるのを待ちません。
Ember.run.later の最後の繰り返しの後に実行される otherFunc に依存する、省略した他のコードがあります。
子コンポーネントから親コンポーネント関数を呼び出し、呼び出された子関数が実行される前に Ember.run.later が終了していることを確認するにはどうすればよいですか?
ember.js - オブザーバーで監視されているプロパティの文字列を連結する
モデルのプロパティを監視しているコンポーネントがあり、モデルはコントローラーのセットアップでコントローラーのプロパティ「モデル」としてコントローラーに供給されます。モデルには、年齢、給与、ランクのプロパティがあります。コンポーネントのプロパティは、ユーザーが入力する必要があります。
コンポーネントは次のように呼び出されます。
また
これは完全なコンポーネントではありませんが、私の問題を説明しています。コンポーネントは次のとおりです。
これは機能していません。そのようなプロパティを観察すると .observes('targetObject.model.age')
、正常に動作します。
でも今は映ってるcori_component.js:29 Uncaught TypeError: this.get is not a function
私も試し.observes('targetObject.model.'+this.prop)
ましたが、エラーは表示されませんが、オブザーバーは機能しません。
「prop」プロパティをオブザーバーに連結する方法は?
または、コンポーネント内の文字列を連結してオブザーバーに置き換える方法はありますか。
ember.js - コンポーネントのEmberjs「eq」
次のように正常に動作するコンポーネントを取得しました (selectedId は確実に設定されています)。
これにより、コンポーネントが正常にレンダリングされますが、if ステートメントで true にならない部分 (そのためにインストールされた ember-truth-helpers)
問題を混ぜたくありませんが、ご覧のとおり、select2 init 呼び出しをコメントアウトしました。それを行うと、select2リストが選択されますが、アイテムはなくなります(まだマークアップにあると考えられます)
ember.js - Emberjs でドロップダウンの変更時にデータをロードする
ドロップダウン (「期間」のリスト) であるコンポーネントがあり、この選択が変更されたときに、その期間のデータを編集できるように、その下のフォームにフォームを入力する必要があります。
メイン テンプレートはコンポーネントを適切にレンダリングします (コード自体が説明してくれるといいのですが)。
コンポーネントは、ピリオドが入力されたドロップダウンでレンダリングされます
モデルには期間プロパティがあり、期間には「バランス」プロパティがあるため、ここで私はそれを緩め始めています(Emberにとって非常に新しい)。したがって、表示されるフォームは model.periods[1].balance のようなものになります(私が慣れているC#コードで考えれば)
とにかく、今のところ私の問題はこの約束事です、データが返されたときにのみ発生するはずの次のコードのアラートの後に私のAPIがヒットしたようです(とにかくアラートは[オブジェクト、オブジェクト]です... uuurgh)
誰かがスプーンで与えられることを期待せずに、私を正しい方向に向けることができれば。
私の質問は次のようになると思います:データが返された後にのみ何かを行う正しい方法は何ですか(約束しますか?)そして次に、入力がモデルの子プロパティ用である場合にフォーム入力に名前を付ける(この場合のように「期間」のコレクションを持つ「取引」モデルがあり、選択されている各期間のデータを編集したい)