2016-06-01 6 views
1

のPARAMとして使用するコンポーネント:エンバーJS、HTMLbars:このようなものにし、私がしたいコンポーネント

{{component-one title=(component-two paramX paramY)}} 

コンポーネントヘルパーはここで働いていない、私はまた、この

{{component-one title=(component 'component-two' params)}} 

を試してみました私のコンポーネントをレンダリングするヘルパーを作ろうとしましたが失敗しました。見つかったすべての回答がこのように時代遅れであると思われます。 how can I invoke an ember component dynamically via a variable?

私の用途に合わせて具体的には、私はtooltipsterを使用し、ボタンのinitでツールチップをレンダリングしたい。

{{#tool-tipster title=(my-comp params) ... }} 

------ UPDATE ---------

問題は、私は最後にボタンとタイトルとDATA-のためのHTML文字列を必要とすること、ですエバーアクション。私はラッパーコンポーネントのtplを使用することはできません。私はツール・タレコミを拡張する場合は、次のようになります。

export default TooltipsterComponent.extend({ 
    title: 'title as html string' 
    //other tooltipster options go here with "optionname: optionvalue" 
}); 

だから私はこのようなものについては、すでに考えた:

title: function() { 
    //load component and return rendered component by hand 
}} 

しかし、これはバック私はレンダリングすることができませんでした私の問題に私をもたらし任意のコンポーネントを手で

入力ごとにThx!

乾杯 パイ

----- UPDATE ------- gitbub上

altrimは私に私の問題のための厳密解提供:title=(component 'component-two' params)を使用してhttps://github.com/altrim/tooltipster-content-component

答えて

2

あなたはこれを行うことができますが、二回コンポーネントのヘルパーを使用する必要があります。

{{wrap-component child=(component 'pass-component' name="blah")}} 

と次wrap-component.hbs内のコンポーネントを呼び出すために:

{{component child}} 

まず、コンポーネントを渡すために

これをチェックアウトするember-twiddle

+0

Thiddle for twiddle。問題は私がラッパーを使用できないことです。あなたが考えることができる他の方法はありますか? – PowPi

1

でした正しい考えですが、私はだと確信しています名前を解決する以外のコンポーネントヘルパーでポジションパラメータを使用することはできません。代わりにこれを行う必要があります:title=(component 'component-two' params=params)

あなたは、このように再びコンポーネントのヘルパーを使用する必要がありますcomponent-oneの内側に、そのコンポーネントをレンダリングします:{{component title}}

これは、私はそれが仕事を得る、少なくとも方法です..私はそれが "かなり確信していますエバー "のやり方でそれをやります。

+0

私が離れても、私は常に "getState 'のnullを読み取ることができません。私は実際には、あなたが "コンポーネントヘルパーをもう一度使って"タイトルの意味をよく理解していません。ヘルプのためのthx – PowPi

+0

ああ...あなたは今何をしようとしているのか分かりませんが、通常はhtml要素のtitle属性は文字列にしかなりません。代わりにコンポーネントを – Grapho

+0

に渡すことはできません。 emberアドオンまたはカスタムツールチップを扱うjsプラグイン – Grapho

関連する問題