/ Foundation functoinが実行されたかどうかを検出する - zurb-foundation

基盤機能が実行されたかどうかを検出する - zurb-foundation

私はZurb FoundationフレームワークをAngular4アプリケーション。私はいくつかのコンポーネントで(ドロップダウンメニュー、アコーディオンなどのような)それのさまざまな要素を使用し、私は多くの警告を取得するアプリケーションを実行するたびに、よう:

foundation.min.js:3 Tried to initialize responsive-toggle on an element that already has a Foundation plugin.
foundation.min.js:3 Tried to initialize accordion on an element that already has a Foundation plugin.
foundation.min.js:3 Tried to initialize dropdown-menu on an element that already has a Foundation plugin.
foundation.min.js:3 Tried to initialize responsive-toggle on an element that already has a Foundation plugin.
foundation.min.js:3 Tried to initialize sticky on an element that already has a Foundation plugin.
foundation.min.js:3 Tried to initialize accordion on an element that already has a Foundation plugin.
foundation.min.js:3 Tried to initialize dropdown-menu on an element that already has a Foundation plugin.
foundation.min.js:3 Tried to initialize responsive-toggle on an element that already has a Foundation plugin.
foundation.min.js:3 Tried to initialize sticky on an element that already has a Foundation plugin.

Javscriptが必要なFoundation要素を使用する各コンポーネントで、私はこれを実行します:

ngOnInit() {
// We initalize Foundation framework once the component has loaded
$(document).foundation();
}

私は主なアプリコンポーネントで一度だけ実行しようとしましたが、すべてが機能しなくなりました。

私はこの警告を表示しない方法があるかどうかを知りたいのではないか、財団にそれが既にロードされていることを検出させるようにしたい。

ありがとう!

回答:

回答№1は0

私は私の目の前で答えを持っていた:

変化する $(document).foundation();

$("NEW_FOUNDATION_ELEMENT_SELECTOR").foundation(); 新しいFoundationコントロールを使用する各コンポーネントで

たとえば、Foundationのアコーディオンを使用するAngularコンポーネントでは、 ngOnInit 次のとおりです。

ngOnInit() {
[...]

$(".accordion").foundation();
}

すべてのコンポーネントでこれを実行すると警告が消えます。