0

Angular-UI Bootstrap Modal が提供する機能の約 90% を構築中の機能があります。唯一の違いは次のとおりです。

  • モーダルは、コンテナの div に対して相対的に配置する必要があります (スタイリングの側面は で既に処理しましたwindowClass) 。

問題は、次のようにcallを$modalStack service ハードコードするbody.appendことです。

body.append(modalDomEl)
body.addClass(OPENED_MODAL_CLASS)

ステップ1はこちら

各サービスのメソッドを単純にコピーして貼り付けopen(openWithinElement に名前を変更)、機能させるために必要なものを変更することから始めました。ご覧のとおり、アプリを実行すると、$q 依存関係が定義されていないというエラーがスローされます。わかりました、それは理にかなっていると思います。

次に、provider.decoratorメソッドに依存関係を追加しました。これにより、すべての依存エラーが回避されました。しかし、その後、別のエラーが発生しましたfunction getTemplatePromise is undefined...もちろん、定義されていません。サービスの内部メソッドです。

その時、私は本当に立ち往生しました。サービス内のすべてのプライベート関数/オブジェクト/小道具を再定義せずに、このサービスを新しい方法で装飾することは不可能に思えます。

そうですか?

[追加する編集] 最終的にはupdateParentElementメソッドでサービスを装飾することになり、モーダルは渡された要素に移動し、.opened promise で実行されました。ハックですが、機能しますが、デコレータに欠けているものがあることを願っています。[/編集]

4

1 に答える 1